mirror of
git://git.musl-libc.org/musl
synced 2025-01-30 02:22:43 +00:00
in sem_open, don't leak vm mapping if fstat fails
fstat should not fail under normal circumstances, so this fix is mostly theoretical.
This commit is contained in:
parent
21088aee2e
commit
52d4444f8e
@ -82,8 +82,8 @@ sem_t *sem_open(const char *name, int flags, ...)
|
||||
if (flags != (O_CREAT|O_EXCL)) {
|
||||
fd = open(name, FLAGS);
|
||||
if (fd >= 0) {
|
||||
if ((map = mmap(0, sizeof(sem_t), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0)) == MAP_FAILED ||
|
||||
fstat(fd, &st) < 0) {
|
||||
if (fstat(fd, &st) < 0 ||
|
||||
(map = mmap(0, sizeof(sem_t), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0)) == MAP_FAILED) {
|
||||
close(fd);
|
||||
goto fail;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user