summaryrefslogtreecommitdiffstats
path: root/roseh.moe.go
diff options
context:
space:
mode:
authorRose Hogenson <rosehogenson@posteo.net>2025-11-02 18:40:03 -0800
committerRose Hogenson <rosehogenson@posteo.net>2025-11-02 18:40:03 -0800
commit1bf1b472382d966d27a5e5e926ed5de7979847a0 (patch)
tree54a6c6b890a672a0270e4b61f27ece68bdea088d /roseh.moe.go
parentActually show QR code (diff)
downloadroseh.moe-1bf1b472382d966d27a5e5e926ed5de7979847a0.tar.zst
Fix a panic
Diffstat (limited to 'roseh.moe.go')
-rw-r--r--roseh.moe.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/roseh.moe.go b/roseh.moe.go
index abafa2e..3cab2c4 100644
--- a/roseh.moe.go
+++ b/roseh.moe.go
@@ -239,12 +239,15 @@ func (c wormholeConn) wormholeCopy(ctx context.Context, hole string) error {
}
}
wormholeConnsMu.Unlock()
- defer close(prevConn.done)
if c.w == nil {
c.w = prevConn.w
} else {
c.r = prevConn.r
}
+ if c.w == nil || c.r == nil {
+ return fmt.Errorf("connection already registered")
+ }
+ defer close(prevConn.done)
c.w.Header().Set("Content-Disposition", "attachment; filename*=UTF-8''"+c.r.FileName())
if _, err := io.Copy(c.w, c.r); err != nil {
return fmt.Errorf("copy: %s", err)