Mercurial > pidgin
changeset 15099:59189ce09f10
[gaim-migrate @ 17885]
Fix wingaim file receiving. It turns out that _access() on win32 is really horrible and will fail on directories when checking any other mode than F_OK.
committer: Tailor Script <tailor@pidgin.im>
author | Daniel Atallah <daniel.atallah@gmail.com> |
---|---|
date | Mon, 04 Dec 2006 01:52:05 +0000 |
parents | 77a45b20f57f |
children | ded621e635e4 |
files | libgaim/ft.c libgaim/internal.h libgaim/win32/libc_interface.h |
diffstat | 3 files changed, 7 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/libgaim/ft.c Sun Dec 03 21:49:17 2006 +0000 +++ b/libgaim/ft.c Mon Dec 04 01:52:05 2006 +0000 @@ -219,9 +219,14 @@ if (g_stat(filename, &st) != 0) { /* File not found. */ if (gaim_xfer_get_type(xfer) == GAIM_XFER_RECEIVE) { +#ifndef _WIN32 + int mode = W_OK; +#else + int mode = F_OK; +#endif dir = g_path_get_dirname(filename); - if (g_access(dir, W_OK) == 0) { + if (g_access(dir, mode) == 0) { gaim_xfer_request_accepted(xfer, filename); } else { gaim_xfer_ref(xfer);
--- a/libgaim/internal.h Sun Dec 03 21:49:17 2006 +0000 +++ b/libgaim/internal.h Mon Dec 04 01:52:05 2006 +0000 @@ -142,7 +142,7 @@ # define g_open open #endif -#if !GLIB_CHECK_VERSION(2,8,0) +#if !GLIB_CHECK_VERSION(2,8,0) && !defined _WIN32 # define g_access access #endif
--- a/libgaim/win32/libc_interface.h Sun Dec 03 21:49:17 2006 +0000 +++ b/libgaim/win32/libc_interface.h Mon Dec 04 01:52:05 2006 +0000 @@ -123,7 +123,6 @@ #if !GLIB_CHECK_VERSION(2,8,0) int wgaim_g_access(const gchar *filename, int mode); -#undef g_access #define g_access( filename, mode) \ wgaim_g_access( filename, mode ) #endif