diff options
-rw-r--r-- | pypaste/server/__init__.py | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/pypaste/server/__init__.py b/pypaste/server/__init__.py index 67f8771..1c13960 100644 --- a/pypaste/server/__init__.py +++ b/pypaste/server/__init__.py @@ -190,7 +190,14 @@ class App: text="content must be unicode only, no binary data is allowed" ) - key = generate_key(self.config.dictionary, self.config.key_length) + try: + while await self.storage.exists( + (key := generate_key(self.config.dictionary, self.config.key_length)) + ): + pass + except Exception as e: + log_error(str(e)) + return web.HTTPInternalServerError() try: paste = Paste(key, datetime.now(), syntax, text) |