Fix "ERROR renaming 'data/reputation.db.tmp'" on Windows.

Reported by hc2995, notipa and floffy.
This commit is contained in:
Bram Matthys 2020-01-02 16:35:24 +01:00
parent eca761fcb9
commit 27ae0fa340
No known key found for this signature in database
GPG key ID: BF8116B163EAAE98

View file

@ -434,6 +434,10 @@ write_fail:
/* Everything went fine. We rename our temporary file to the existing
* DB file (will overwrite), which is more or less an atomic operation.
*/
#ifdef _WIN32
/* The rename operation cannot be atomic on Windows as it will cause a "file exists" error */
unlink(cfg.database);
#endif
if (rename(tmpfname, cfg.database) < 0)
{
config_error("ERROR renaming '%s' to '%s': %s -- DATABASE *NOT* SAVED!!!",