[Nautilus-list] Nautilus HEAD on Solaris
- From: Laszlo PETER <Laszlo Peter ireland sun com>
- To: Nautilus list <nautilus-list eazel com>
- Cc: Brian Cameron <Brian Cameron ireland sun com>
- Subject: [Nautilus-list] Nautilus HEAD on Solaris
- Date: Thu, 19 Apr 2001 18:48:53 +0100
Hi,
This morning I built Nautilus on Solaris 8 from the CVS HEAD.
I've found a few little things:
Build issues:
- in libnautilus-extensions/nautilus-cdrom-extensions.h
I needed
#include <sys/types.h>
before
#include <sys/cdio.h>
for caddr_t.
- in libnautilus-extensions/nautilus-volume-monitor.c
Two little fixes:
#ifdef HAVE_SYS_MNTTAB_H
- MountTableEntry *ent = &ent_storage;
+ ent = &ent_storage;
(ent is already defined a few lines above)
and:
- *fd = open (new_dev_path.str, O_RDONLY | O_NONBLOCK);
+ *fd = open (new_dev_path->str, O_RDONLY | O_NONBLOCK);
(new_dev_path is a pointer)
Runtime issues:
- Nautilus crashed when I had a CD mounted or if I put in a CD while Nautilus was running.
This was because in libnautilus-extensions/nautilus-volume-monitor.c
NAUTILUS_VOLUME_HSFS was not handled by the switch()'es in
functions mount_volume_get_name() and mount_volume_activate()
so it reached g_assert_not_reached ().
I have attached the patch for the above issues.
I have one more issue around the volume monitor code though. If I start nautilus with
a CD in the drive it comes up and displays the CD icon on the desktop but the label
says "Unknown". Now, if I right click and choose unmount it ejects the CD but
the icon stays on the desktop. Then, if I put in the CD again, it puts another icon
on the desktop with the correct label (e.g. mp3 (-;), so I have 2 of them.
This only happens if the CD is in the drive when I start Nautilus. I didn't have a
chance to test it on Linux.
Cheers,
Laca
Index: libnautilus-extensions/nautilus-cdrom-extensions.h
===================================================================
RCS file: /export/CVS/GNOME-RE/nautilus/libnautilus-extensions/nautilus-cdrom-extensions.h,v
retrieving revision 1.2
diff -u -r1.2 nautilus-cdrom-extensions.h
--- libnautilus-extensions/nautilus-cdrom-extensions.h 2001/02/22 14:21:54 1.2
+++ libnautilus-extensions/nautilus-cdrom-extensions.h 2001/04/19 17:40:29
@@ -25,6 +25,7 @@
#ifndef FM_CDROM_EXTENSIONS_H
#define FM_CDROM_EXTENSIONS_H
+#include <sys/types.h>
#ifdef HAVE_SYS_CDIO_H
Index: libnautilus-extensions/nautilus-volume-monitor.c
===================================================================
RCS file: /export/CVS/GNOME-RE/nautilus/libnautilus-extensions/nautilus-volume-monitor.c,v
retrieving revision 1.81
diff -u -r1.81 nautilus-volume-monitor.c
--- libnautilus-extensions/nautilus-volume-monitor.c 2001/04/18 23:47:34 1.81
+++ libnautilus-extensions/nautilus-volume-monitor.c 2001/04/19 17:40:29
@@ -441,7 +441,7 @@
/* Search for our device in the fstab */
#ifdef HAVE_SYS_MNTTAB_H
- MountTableEntry *ent = &ent_storage;
+ ent = &ent_storage;
while (!getmntent (file, ent)) {
if (strcmp (volume->device_path, ent->mnt_special) == 0) {
/* On Solaris look for /vol/ for determining
@@ -748,6 +748,7 @@
break;
case NAUTILUS_VOLUME_CDROM:
+ case NAUTILUS_VOLUME_HSFS:
mount_volume_get_cdrom_name (volume);
break;
@@ -804,6 +805,7 @@
break;
case NAUTILUS_VOLUME_CDROM:
+ case NAUTILUS_VOLUME_HSFS:
mount_volume_activate_cdrom (monitor, volume);
break;
@@ -877,6 +879,7 @@
switch (volume->type) {
case NAUTILUS_VOLUME_CDROM:
+ case NAUTILUS_VOLUME_HSFS:
pthread_create (&eject_thread, NULL, eject_device, g_strdup (volume->device_path));
break;
@@ -1177,7 +1180,7 @@
*/
new_dev_path = g_string_new (vol_dev_path);
new_dev_path = g_string_insert_c (new_dev_path, 9, 'r');
- *fd = open (new_dev_path.str, O_RDONLY | O_NONBLOCK);
+ *fd = open (new_dev_path->str, O_RDONLY | O_NONBLOCK);
g_string_free (new_dev_path, TRUE);
if (*fd < 0) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]