diff options
-rw-r--r-- | src/loader/loader.nim | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/loader/loader.nim b/src/loader/loader.nim index 28119f0e..0d6c655a 100644 --- a/src/loader/loader.nim +++ b/src/loader/loader.nim @@ -241,6 +241,9 @@ proc openCachedItem(client: ClientData; id: int): (PosixStream, int) = if n != -1: let item = client.cacheMap[n] let ps = newPosixStream(client.cacheMap[n].path, O_RDONLY, 0) + if ps == nil: + client.cacheMap.del(n) + return (nil, -1) assert item.offset != -1 ps.seek(item.offset) return (ps, n) @@ -409,7 +412,7 @@ proc finishParse(handle: InputHandle) = handle.parser = nil break handle.cacheRef.offset = off - handle.cacheRef = nil + handle.cacheRef = nil if handle.parser != nil: discard handle.parseHeaders(nil) |