dbus/dbus-sysdeps-win.c: use MoveFileEx, not unlink+rename, in _dbus_string_save_to_f...
authorTor Lillqvist <tml@iki.fi>
Wed, 22 Apr 2009 11:32:29 +0000 (13:32 +0200)
committerRalf Habacker <ralf.habacker@freenet.de>
Mon, 30 Nov 2009 12:21:33 +0000 (13:21 +0100)
dbus/dbus-sysdeps-win.c

index 2aec554..7d9fc4a 100644 (file)
@@ -2229,8 +2229,8 @@ _dbus_string_save_to_file (const DBusString *str,
 
   fd = -1;
 
-  if ((unlink (filename_c) == -1 && errno != ENOENT) ||
-       rename (tmp_filename_c, filename_c) < 0)
+  /* Unlike rename(), MoveFileEx() can replace existing files */
+  if (MoveFileExA (tmp_filename_c, filename_c, MOVEFILE_REPLACE_EXISTING) < 0)
     {
       dbus_set_error (error, _dbus_error_from_errno (errno),
                       "Could not rename %s to %s: %s",