# HG changeset patch # User Daniel Atallah # Date 1205785922 0 # Node ID 22fef6b952a0587c95280d4f65f0f3c1d0e17604 # Parent a65a76072f31e2e5438f0a9234073286b2008c44 I was wondering why the more sane error messges were never appearing... now I know. There is also a fix here that uses glib's internal rename stuff on recent versions because it is more robust than our win32 version. diff -r a65a76072f31 -r 22fef6b952a0 libpurple/win32/libc_interface.c --- a/libpurple/win32/libc_interface.c Mon Mar 17 14:43:28 2008 +0000 +++ b/libpurple/win32/libc_interface.c Mon Mar 17 20:32:02 2008 +0000 @@ -320,12 +320,16 @@ switch(errornum) { case WSAECONNABORTED: /* 10053 */ snprintf(errbuf, sizeof(errbuf), _("Connection interrupted by other software on your computer.")); + break; case WSAECONNRESET: /* 10054 */ snprintf(errbuf, sizeof(errbuf), _("Remote host closed connection.")); + break; case WSAETIMEDOUT: /* 10060 */ snprintf(errbuf, sizeof(errbuf), _("Connection timed out.")); + break; case WSAECONNREFUSED: /*10061 */ snprintf(errbuf, sizeof(errbuf), _("Connection refused.")); + break; default: snprintf(errbuf, sizeof(errbuf), "Windows socket error #%d", errornum); } @@ -452,6 +456,11 @@ int wpurple_rename (const char *oldname, const char *newname) { struct stat oldstat, newstat; + /* As of Glib 2.8.5, g_rename() uses MoveFileEx() with MOVEFILE_REPLACE_EXISTING to behave more sanely */ + if (glib_check_version(2, 8, 5) == NULL) { + return g_rename(oldname, newname); + } + if(g_stat(oldname, &oldstat) == 0) { /* newname exists */ if(g_stat(newname, &newstat) == 0) {