Mercurial > prosody-modules
diff mod_http_upload/mod_http_upload.lua @ 2690:43ad92c5b91a
mod_http_upload: Return an error if unable to store slot info
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sat, 15 Apr 2017 15:53:46 +0200 |
parents | 0fc706855af9 |
children | 92ddfc548ce8 |
line wrap: on
line diff
--- a/mod_http_upload/mod_http_upload.lua Sat Apr 15 15:52:54 2017 +0200 +++ b/mod_http_upload/mod_http_upload.lua Sat Apr 15 15:53:46 2017 +0200 @@ -160,8 +160,13 @@ until lfs.mkdir(join_path(storage_path, random_dir)) or not lfs.attributes(join_path(storage_path, random_dir, filename)) - datamanager.list_append(username, host, module.name, { + local ok = datamanager.list_append(username, host, module.name, { filename = join_path(storage_path, random_dir, filename), size = filesize, time = os.time() }); + if not ok then + origin.send(st.error_reply(stanza, "wait", "internal-server-failure")); + return true; + end + local slot = random_dir.."/"..filename; pending_slots[slot] = origin.full_jid;