12311
|
1 |
--- nautilus-cd-burner-2.22.0/src/nautilus-burn-drive.c.bak 2008-05-16 17:36:53.167745000 +0800
|
|
2 |
+++ nautilus-cd-burner-2.22.0/src/nautilus-burn-drive.c 2008-05-16 17:36:39.179548000 +0800
|
|
3 |
@@ -43,6 +43,10 @@
|
|
4 |
#include <scsi/sg.h>
|
|
5 |
#endif /* __linux__ */
|
|
6 |
|
|
7 |
+#ifdef sun
|
|
8 |
+#include <sys/dkio.h>
|
|
9 |
+#endif /* sun */
|
|
10 |
+
|
|
11 |
#ifdef __FreeBSD__
|
|
12 |
#include <sys/cdio.h>
|
|
13 |
#include <sys/cdrio.h>
|
|
14 |
@@ -799,6 +803,13 @@
|
10042
|
15 |
|
11504
|
16 |
g_return_val_if_fail (drive != NULL, FALSE);
|
10042
|
17 |
|
12311
|
18 |
+#ifdef sun
|
|
19 |
+ if (drive->priv->media_udi != NULL) {
|
|
20 |
+ cmd = g_strdup_printf ("gnome-mount --block --eject --no-ui --hal-udi=%s", drive->priv->media_udi);
|
|
21 |
+ } else {
|
|
22 |
+ cmd = g_strdup ("eject cdrom");
|
|
23 |
+ }
|
10042
|
24 |
+#else
|
11504
|
25 |
if (drive->priv->device == NULL) {
|
|
26 |
return FALSE;
|
|
27 |
}
|
12311
|
28 |
@@ -808,6 +819,7 @@
|
10042
|
29 |
#else
|
11504
|
30 |
cmd = g_strdup_printf ("eject %s", drive->priv->device);
|
10042
|
31 |
#endif
|
|
32 |
+#endif
|
|
33 |
|
11504
|
34 |
res = g_spawn_command_line_sync (cmd, NULL, NULL, NULL, NULL);
|
|
35 |
g_free (cmd);
|
12311
|
36 |
@@ -1463,7 +1475,7 @@
|
|
37 |
return status & CDC_OPEN_TRAY;
|
|
38 |
}
|
|
39 |
#else
|
|
40 |
- return FALSE;
|
|
41 |
+ return TRUE;
|
|
42 |
#endif
|
|
43 |
}
|
|
44 |
|