glib r6901 - trunk/gio
- From: matthiasc svn gnome org
- To: svn-commits-list gnome org
- Subject: glib r6901 - trunk/gio
- Date: Sat, 17 May 2008 07:01:44 +0100 (BST)
Author: matthiasc
Date: Sat May 17 06:01:43 2008
New Revision: 6901
URL: http://svn.gnome.org/viewvc/glib?rev=6901&view=rev
Log:
Bug 530196 â _g_local_file_has_trash_dir() doesn't handle st_dev == 0
* glocalfile.c (_g_local_file_has_trash_dir): Handle the case that
st_dev might be zero.
Modified:
trunk/gio/ChangeLog
trunk/gio/glocalfile.c
Modified: trunk/gio/glocalfile.c
==============================================================================
--- trunk/gio/glocalfile.c (original)
+++ trunk/gio/glocalfile.c Sat May 17 06:01:43 2008
@@ -1580,7 +1580,8 @@
gboolean
_g_local_file_has_trash_dir (const char *dirname, dev_t dir_dev)
{
- static gsize home_dev = 0;
+ static gsize home_dev_set = 0;
+ static dev_t home_dev;
char *topdir, *globaldir, *trashdir, *tmpname;
uid_t uid;
char uid_str[32];
@@ -1588,18 +1589,17 @@
gboolean res;
int statres;
- if (g_once_init_enter (&home_dev))
+ if (g_once_init_enter (&home_dev_set))
{
- gsize setup_value = 0;
struct stat home_stat;
g_stat (g_get_home_dir (), &home_stat);
- setup_value = home_stat.st_dev;
- g_once_init_leave (&home_dev, setup_value);
+ home_dev = home_stat.st_dev;
+ g_once_init_leave (&home_dev_set, 1);
}
/* Assume we can trash to the home */
- if (dir_dev == (dev_t)home_dev)
+ if (dir_dev == home_dev)
return TRUE;
topdir = find_mountpoint_for (dirname, dir_dev);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]