1
0
mirror of https://gitlab.xiph.org/xiph/icecast-server.git synced 2024-06-23 06:25:24 +00:00

Use remove() then rename() only on win32 - where it's required.

Don't use it on unix systems, which don't need it, and where doing 
_only_ rename() preserves atomicity. 

svn path=/icecast/trunk/icecast/; revision=6625
This commit is contained in:
Michael Smith 2004-05-05 05:05:05 +00:00
parent d11f777888
commit dc9903512d

View File

@ -366,6 +366,7 @@ int auth_htpasswd_deleteuser(auth_t *auth, char *username)
fclose(passwdfile);
/* Now move the contents of the tmp file to the original */
#ifdef _WIN32
/* Windows won't let us rename a file if the destination file
exists...so, lets remove the original first */
if (remove(state->filename) != 0) {
@ -373,11 +374,14 @@ int auth_htpasswd_deleteuser(auth_t *auth, char *username)
tmpfile, state->filename, strerror(errno));
}
else {
#endif
if (rename(tmpfile, state->filename) != 0) {
ERROR3("Problem moving temp authentication file to original \"%s\" - \"%s\": %s",
tmpfile, state->filename, strerror(errno));
}
#ifdef _WIN32
}
#endif
free(tmpfile);