summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMia Herkt <mia@0x0.st>2022-08-11 05:49:46 +0200
committerMia Herkt <mia@0x0.st>2022-08-11 05:49:46 +0200
commitc7a728ce84111b9a73edf84491afe349a3d0761c (patch)
tree3f26c9186c44f544f9eb0e714daf5f3bf68bdf73
parent5216e9ebaf7046d06afa6273c33b4fa0b1f53ceb (diff)
Fix non-seekable file handles
Closes #59
-rwxr-xr-xfhost.py8
1 files changed, 4 insertions, 4 deletions
diff --git a/fhost.py b/fhost.py
index 2703810..9c2b94b 100755
--- a/fhost.py
+++ b/fhost.py
@@ -140,7 +140,7 @@ class File(db.Model):
return url_for("get", path=n, _external=True) + "\n"
def store(file_, addr):
- data = file_.stream.read()
+ data = file_.read()
digest = sha256(data).hexdigest()
def get_mime():
@@ -192,8 +192,8 @@ class File(db.Model):
p = storage / digest
if not p.is_file():
- file_.stream.seek(0)
- file_.save(p)
+ with open(p, "wb") as of:
+ of.write(data)
else:
p.touch()
@@ -287,7 +287,7 @@ def store_url(url, addr):
def urlfile(**kwargs):
return type('',(),kwargs)()
- f = urlfile(stream=r.raw, content_type=r.headers["content-type"], filename="")
+ f = urlfile(read=r.raw.read, content_type=r.headers["content-type"], filename="")
return store_file(f, addr)
else: