* the program is found, the return value contains the full name
* including the type suffix.
*
- * Return value: a newly-allocated string with the absolute path, or %NULL
+ * Returns: a newly-allocated string with the absolute path, or %NULL
**/
#ifdef G_OS_WIN32
static gchar *
* g_get_prgname() (which may be %NULL if g_set_prgname() has also not
* been called).
*
- * Return value: human-readable application name. may return %NULL
+ * Returns: human-readable application name. may return %NULL
*
* Since: 2.2
**/
* CSIDL_LOCAL_APPDATA. Note that on Windows it thus is the same as
* what g_get_user_config_dir() returns.
*
- * Return value: a string owned by GLib that must not be modified
+ * Returns: a string owned by GLib that must not be modified
* or freed.
* Since: 2.6
**/
* CSIDL_LOCAL_APPDATA. Note that on Windows it thus is the same as
* what g_get_user_data_dir() returns.
*
- * Return value: a string owned by GLib that must not be modified
+ * Returns: a string owned by GLib that must not be modified
* or freed.
* Since: 2.6
**/
* C:\Documents and Settings\username\Local Settings\Temporary Internet Files.
* See documentation for CSIDL_INTERNET_CACHE.
*
- * Return value: a string owned by GLib that must not be modified
+ * Returns: a string owned by GLib that must not be modified
* or freed.
* Since: 2.6
**/
g_user_special_dirs[G_USER_DIRECTORY_VIDEOS] = find_folder (kMovieDocumentsFolderType);
}
-#endif /* HAVE_CARBON */
+#elif defined(G_OS_WIN32)
-#if defined(G_OS_WIN32)
static void
load_user_special_dirs (void)
{
g_user_special_dirs[G_USER_DIRECTORY_TEMPLATES] = get_special_folder (CSIDL_TEMPLATES);
g_user_special_dirs[G_USER_DIRECTORY_VIDEOS] = get_special_folder (CSIDL_MYVIDEO);
}
-#endif /* G_OS_WIN32 */
-
-#if defined(G_OS_UNIX) && !defined(HAVE_CARBON)
+#else /* default is unix */
/* adapted from xdg-user-dir-lookup.c
*
g_free (config_file);
}
-#endif /* G_OS_UNIX && !HAVE_CARBON */
+#endif /* platform-specific load_user_special_dirs implementations */
/**
* of the special directory without requiring the session to restart; GLib
* will not reflect any change once the special directories are loaded.
*
- * Return value: the path to the specified special directory, or %NULL
+ * Returns: the path to the specified special directory, or %NULL
* if the logical id was not found. The returned string is owned by
* GLib and should not be modified or freed.
*
gchar **retval;
gchar *p;
gchar *exe_root;
-
+
+ hmodule = NULL;
if (address_of_function)
{
G_LOCK (g_utils_global);
* Note that on Windows the returned list can vary depending on where
* this function is called.
*
- * Return value: (array zero-terminated=1) (transfer none): a %NULL-terminated array of strings owned by GLib that must
+ * Returns: (array zero-terminated=1) (transfer none): a %NULL-terminated array of strings owned by GLib that must
* not be modified or freed.
* Since: 2.6
**/
* of clip art, or a log file in the CSIDL_COMMON_APPDATA folder.
* This information will not roam and is available to anyone using the computer.
*
- * Return value: (array zero-terminated=1) (transfer none): a %NULL-terminated array of strings owned by GLib that must
+ * Returns: (array zero-terminated=1) (transfer none): a %NULL-terminated array of strings owned by GLib that must
* not be modified or freed.
* Since: 2.6
**/
extern int __libc_enable_secure;
return __libc_enable_secure;
}
-#elif defined(HAVE_ISSETUGID)
+#elif defined(HAVE_ISSETUGID) && !defined(__BIONIC__)
/* BSD: http://www.freebsd.org/cgi/man.cgi?query=issetugid&sektion=2 */
+
+ /* Android had it in older versions but the new 64 bit ABI does not
+ * have it anymore, and some versions of the 32 bit ABI neither.
+ * https://code.google.com/p/android-developer-preview/issues/detail?id=168
+ */
return issetugid ();
#elif defined(G_OS_UNIX)
uid_t ruid, euid, suid; /* Real, effective and saved user ID's */