zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 93e89b3b7efeaa41f4f11fbb022b962d2244dab2 (tree)
parent ea5518f69edc51e8e70c2c4d4c4daa3ad9bcb242
Author: Ben Noordhuis <info@bnoordhuis.nl>
Date:   Sat, 13 Apr 2019 12:33:29 +0200

don't close cache manifest file prematurely

ErrorInvalidFormat is not a fatal error so don't close the cache
manifest file right away but instead let cache_final() handle it.

Fixes the following (very common) warning when running the test suite:

    Warning: Unable to write cache file [..]: unexpected seek failure

The seek failure is an lseek() system call that failed with EBADF
because the file descriptor had already been closed.

Diffstat:
Msrc/cache_hash.cpp | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/cache_hash.cpp b/src/cache_hash.cpp @@ -437,7 +437,7 @@ Error cache_hit(CacheHash *ch, Buf *out_digest) { return ErrorCacheUnavailable; } } - if (return_code != ErrorNone) { + if (return_code != ErrorNone && return_code != ErrorInvalidFormat) { os_file_close(&ch->manifest_file); } return return_code;