diff options
| author | Rose Hogenson <rosehogenson@posteo.net> | 2025-11-02 18:40:03 -0800 |
|---|---|---|
| committer | Rose Hogenson <rosehogenson@posteo.net> | 2025-11-02 18:40:03 -0800 |
| commit | 1bf1b472382d966d27a5e5e926ed5de7979847a0 (patch) | |
| tree | 54a6c6b890a672a0270e4b61f27ece68bdea088d /roseh.moe.go | |
| parent | Actually show QR code (diff) | |
| download | roseh.moe-1bf1b472382d966d27a5e5e926ed5de7979847a0.tar.zst | |
Fix a panic
Diffstat (limited to 'roseh.moe.go')
| -rw-r--r-- | roseh.moe.go | 5 |
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) |
