diff options
author | Gene Z. Ragan <gzr@eazel.com> | 2001-04-16 18:06:43 +0000 |
---|---|---|
committer | Gene Ragan <gzr@src.gnome.org> | 2001-04-16 18:06:43 +0000 |
commit | 17af0c518cd34c079fe81a8170932b5d365b5088 (patch) | |
tree | 520b72f1effd63aeb914f6296bffd8c8486f50c4 /libnautilus-private | |
parent | fb803f79974dccdb1570d82236c1440cc3d0630a (diff) | |
download | nautilus-17af0c518cd34c079fe81a8170932b5d365b5088.tar.gz |
Add a global to track the presence of /etc/mnttab and use that value
2001-04-16 Gene Z. Ragan <gzr@eazel.com>
Add a global to track the presence of /etc/mnttab and
use that value instead of the improper ifdef that
I added last week. Check the value of this variable
and use the result to determine to use mnttab or
/proc/mounts.
* libnautilus-extensions/nautilus-volume-monitor.c:
(nautilus_volume_monitor_initialize_class),
(get_current_mount_list):
Diffstat (limited to 'libnautilus-private')
-rw-r--r-- | libnautilus-private/nautilus-volume-monitor.c | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/libnautilus-private/nautilus-volume-monitor.c b/libnautilus-private/nautilus-volume-monitor.c index 3c199f0ea..40d7f3308 100644 --- a/libnautilus-private/nautilus-volume-monitor.c +++ b/libnautilus-private/nautilus-volume-monitor.c @@ -131,6 +131,7 @@ struct NautilusVolumeMonitorDetails static NautilusVolumeMonitor *global_volume_monitor = NULL; static const char *floppy_device_path_prefix; static const char *noauto_string; +static gboolean mnttab_exists; /* The NautilusVolumeMonitor signals. */ @@ -240,6 +241,12 @@ nautilus_volume_monitor_initialize_class (NautilusVolumeMonitorClass *klass) } else { noauto_string = "/dev/fd/"; } + + if (g_file_exists ("/etc/mnttab")) { + mnttab_exists = TRUE; + } else { + mnttab_exists = FALSE; + } } static void @@ -958,13 +965,14 @@ get_current_mount_list (void) char *device_path, *mount_path, *filesystem; const char *separator; -#ifdef SOLARIS_MNT - fh = fopen ("/etc/mnttab", "r"); - separator = "\t"; -#else - fh = fopen ("/proc/mounts", "r"); - separator = " "; -#endif + if (mnttab_exists) { + fh = fopen ("/etc/mnttab", "r"); + separator = "\t"; + } else { + fh = fopen ("/proc/mounts", "r"); + separator = " "; + } + if (fh == NULL) { g_warning ("Unable to open /etc/mnttab or /proc/mounts: %s", strerror (errno)); return NULL; |