fix temp file leak in sem_open on successful creation of new semaphore
This commit is contained in:
parent
a033cd22aa
commit
7c20a11801
1 changed files with 2 additions and 2 deletions
|
|
@ -123,9 +123,9 @@ sem_t *sem_open(const char *name, int flags, ...)
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
close(fd);
|
close(fd);
|
||||||
if (link(tmp, name) == 0) break;
|
e = link(tmp, name) ? errno : 0;
|
||||||
e = errno;
|
|
||||||
unlink(tmp);
|
unlink(tmp);
|
||||||
|
if (!e) break;
|
||||||
/* Failure is only fatal when doing an exclusive open;
|
/* Failure is only fatal when doing an exclusive open;
|
||||||
* otherwise, next iteration will try to open the
|
* otherwise, next iteration will try to open the
|
||||||
* existing file. */
|
* existing file. */
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue