mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-05-23 05:42:29 +00:00
Fix redbean zip central directory lookup
This regression snuck in at some point. It resulted in the program sometimes failing to load when the zip content was changed.
This commit is contained in:
parent
19d0c15e03
commit
218ef49147
10 changed files with 183 additions and 11 deletions
|
@ -24,7 +24,7 @@
|
|||
#include "libc/sysv/consts/o.h"
|
||||
#include "libc/testlib/testlib.h"
|
||||
|
||||
#define MODE() \
|
||||
#define Mode() \
|
||||
({ \
|
||||
va_list va; \
|
||||
unsigned Mode; \
|
||||
|
@ -40,7 +40,7 @@ static int MockOpen1(const char *file, int flags, ...) {
|
|||
once = true;
|
||||
EXPECT_STREQ("/tmp/mkostemps.ctre5m", file);
|
||||
EXPECT_EQ(O_RDWR | O_CREAT | O_EXCL, flags);
|
||||
EXPECT_EQ(0600, MODE());
|
||||
EXPECT_EQ(0600, Mode());
|
||||
return 123;
|
||||
}
|
||||
|
||||
|
@ -59,14 +59,14 @@ static int MockOpen2(const char *file, int flags, ...) {
|
|||
state = 1;
|
||||
EXPECT_STREQ("/tmp/mkostemps.ctre5m", file);
|
||||
EXPECT_EQ((unsigned)(O_RDWR | O_CREAT | O_EXCL), flags);
|
||||
EXPECT_EQ(0600, MODE());
|
||||
EXPECT_EQ(0600, Mode());
|
||||
errno = EEXIST;
|
||||
return -1;
|
||||
case 1:
|
||||
state = 1;
|
||||
EXPECT_STREQ("/tmp/mkostemps.jl1h61", file);
|
||||
EXPECT_EQ((unsigned)(O_RDWR | O_CREAT | O_EXCL), flags);
|
||||
EXPECT_EQ(0600, MODE());
|
||||
EXPECT_EQ(0600, Mode());
|
||||
return 123;
|
||||
default:
|
||||
abort();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue