summaryrefslogtreecommitdiffstats
path: root/sysutils/nautilus-cd-burner/files/patch-cd-drive.c
diff options
context:
space:
mode:
Diffstat (limited to 'sysutils/nautilus-cd-burner/files/patch-cd-drive.c')
-rw-r--r--sysutils/nautilus-cd-burner/files/patch-cd-drive.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/sysutils/nautilus-cd-burner/files/patch-cd-drive.c b/sysutils/nautilus-cd-burner/files/patch-cd-drive.c
new file mode 100644
index 000000000..138791648
--- /dev/null
+++ b/sysutils/nautilus-cd-burner/files/patch-cd-drive.c
@@ -0,0 +1,37 @@
+--- cd-drive.c.orig Sat Sep 20 00:07:14 2003
++++ cd-drive.c Sat Sep 20 00:14:56 2003
+@@ -702,6 +702,7 @@
+ int speed = 16; /* XXX Hardcode the write speed for now. */
+ int max_speed = CDR_MAX_SPEED;
+ int i = 0;
++ int cnode = 1; /* Use the CD device's 'c' node. */
+
+ while (1) {
+ CDDriveType type;
+@@ -714,7 +715,12 @@
+
+ if (!g_file_test (cam_path, G_FILE_TEST_EXISTS)) {
+ g_free (cam_path);
+- break;
++ cam_path = g_strdup_printf ("/dev/%s%d", dev_type, i);
++ cnode = 0;
++ if (!g_file_test (cam_path, G_FILE_TEST_EXISTS)) {
++ g_free (cam_path);
++ break;
++ }
+ }
+
+ if ((cam_dev = cam_open_spec_device (dev_type, i, O_RDWR, NULL)) == NULL) {
+@@ -725,7 +731,11 @@
+
+ /* XXX Other controllers might need to be added. */
+ if ((strncmp (cam_dev->sim_name, "ata", 3)) == 0) {
+- dev = g_strdup_printf ("/dev/a%s%dc", dev_type, i);
++ if (cnode) {
++ dev = g_strdup_printf ("/dev/a%s%dc", dev_type, i);
++ } else {
++ dev = g_strdup_printf ("/dev/a%s%d", dev_type, i);
++ }
+ } else {
+ dev = g_strdup (cam_path);
+ }