diff --git a/model.py b/model.py

index 7f81977..b904e71 100644

--- a/model.py

+++ b/model.py

@@ -878,8 +878,15 @@ class Database:

             cur.execute("DELETE FROM users WHERE id=?", (user_id,))

             self.commit()

             raise GeminiError(62, 'Certificate not valid')

- cur.execute("INSERT INTO subspaces (name, owner) VALUES (?, ?)", (username, user_id))

- self.commit()

+ try:

+ cur.execute("INSERT INTO subspaces (name, owner) VALUES (?, ?)", (username, user_id))

+ self.commit()

+ except:

+ # Undo the previous database changes.

+ cur.execute("DELETE FROM users WHERE id=?", (user_id,))

+ cur.execute("DELETE FROM certs WHERE user=?", (user_id,))

+ self.commit()

+ raise GeminiError(50, 'Subspace already exists')

     self.notify_admin(Notification.USER_CREATED, user_id)

     return user_id



Proxy Information
Original URL
gemini://git.skyjake.fi/bubble/main/pcdiff/2c53b11bbf8e1493695a8c839ebc0dcc95f38a48
Status Code
Success (20)
Meta
text/plain
Capsule Response Time
63.176791 milliseconds
Gemini-to-HTML Time
0.828301 milliseconds

This content has been proxied by September (3851b).