From: Hans Breuer Date: Sun, 14 Dec 2003 19:05:29 +0000 (+0000) Subject: make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) return something useful on X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=aaa2ab083eb69743a3f9b95c06aff58bca4987fa;p=dana%2Fcg-glib.git make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) return something useful on 2003-12-14 Hans Breuer * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) return something useful on win32, too. --- diff --git a/ChangeLog b/ChangeLog index 52541684..ae385105 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2003-12-14 Hans Breuer + + * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) + return something useful on win32, too. + 2003-12-13 Hans Breuer * glib/gconvert.c : get_filename_charset() needs to diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 52541684..ae385105 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,8 @@ +2003-12-14 Hans Breuer + + * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) + return something useful on win32, too. + 2003-12-13 Hans Breuer * glib/gconvert.c : get_filename_charset() needs to diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index 52541684..ae385105 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -1,3 +1,8 @@ +2003-12-14 Hans Breuer + + * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) + return something useful on win32, too. + 2003-12-13 Hans Breuer * glib/gconvert.c : get_filename_charset() needs to diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 52541684..ae385105 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,8 @@ +2003-12-14 Hans Breuer + + * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) + return something useful on win32, too. + 2003-12-13 Hans Breuer * glib/gconvert.c : get_filename_charset() needs to diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 52541684..ae385105 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,8 @@ +2003-12-14 Hans Breuer + + * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) + return something useful on win32, too. + 2003-12-13 Hans Breuer * glib/gconvert.c : get_filename_charset() needs to diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 52541684..ae385105 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,8 @@ +2003-12-14 Hans Breuer + + * glib/gfileutils.c : make g_file_test(,G_FILE_TEST_IS_EXECUTABLE) + return something useful on win32, too. + 2003-12-13 Hans Breuer * glib/gconvert.c : get_filename_charset() needs to diff --git a/glib/gfileutils.c b/glib/gfileutils.c index 0381c80a..05e4f362 100644 --- a/glib/gfileutils.c +++ b/glib/gfileutils.c @@ -40,7 +40,6 @@ #include #ifndef F_OK #define F_OK 0 -#define X_OK 1 #define W_OK 2 #define R_OK 4 #endif /* !F_OK */ @@ -121,11 +120,10 @@ g_file_test (const gchar *filename, if ((test & G_FILE_TEST_EXISTS) && (access (filename, F_OK) == 0)) return TRUE; +#ifndef G_OS_WIN32 if ((test & G_FILE_TEST_IS_EXECUTABLE) && (access (filename, X_OK) == 0)) { -#ifndef G_OS_WIN32 if (getuid () != 0) -#endif return TRUE; /* For root, on some POSIX systems, access (filename, X_OK) @@ -135,6 +133,7 @@ g_file_test (const gchar *filename, } else test &= ~G_FILE_TEST_IS_EXECUTABLE; +#endif if (test & G_FILE_TEST_IS_SYMLINK) { @@ -171,6 +170,10 @@ g_file_test (const gchar *filename, (s.st_mode & S_IXUSR) || (s.st_mode & S_IXGRP))) return TRUE; +#else + if ((test & G_FILE_TEST_IS_EXECUTABLE) && + (s.st_mode & _S_IEXEC)) + return TRUE; #endif } }