From 91b21a63c0cce1fffa8ad55afcddd4173abc2701 Mon Sep 17 00:00:00 2001 From: Lars Weiler Date: Sun, 12 Nov 2006 14:57:14 +0000 Subject: [PATCH] Switching to a much more advanced cdrecord2wodim.patch; taken from Debian Bug #390174 with some slight changes. Package-Manager: portage-2.1.2_rc1-r5 --- app-cdr/xcdroast/ChangeLog | 6 +- app-cdr/xcdroast/Manifest | 16 +- app-cdr/xcdroast/files/cdrecord2wodim.patch | 979 +++++++++++++++++++- 3 files changed, 958 insertions(+), 43 deletions(-) diff --git a/app-cdr/xcdroast/ChangeLog b/app-cdr/xcdroast/ChangeLog index ffce2666b114..bbc2e5e12f74 100644 --- a/app-cdr/xcdroast/ChangeLog +++ b/app-cdr/xcdroast/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for app-cdr/xcdroast # Copyright 2002-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-cdr/xcdroast/ChangeLog,v 1.50 2006/11/11 13:01:30 pylon Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-cdr/xcdroast/ChangeLog,v 1.51 2006/11/12 14:57:14 pylon Exp $ + + 12 Nov 2006; Lars Weiler files/cdrecord2wodim.patch: + Switching to a much more advanced cdrecord2wodim.patch; taken from Debian + Bug #390174 with some slight changes. 11 Nov 2006; Lars Weiler files/cdrecord2wodim.patch, xcdroast-0.98_alpha15-r4.ebuild: diff --git a/app-cdr/xcdroast/Manifest b/app-cdr/xcdroast/Manifest index 5e269bbfc020..04df6ac96604 100644 --- a/app-cdr/xcdroast/Manifest +++ b/app-cdr/xcdroast/Manifest @@ -2,10 +2,10 @@ AUX 64bit_gsize.patch 471 RMD160 629cc85cf526801a077cc73ff6b597799418869c SHA1 f MD5 121eabf95d22bf4f85b5c0426bf133a5 files/64bit_gsize.patch 471 RMD160 629cc85cf526801a077cc73ff6b597799418869c files/64bit_gsize.patch 471 SHA256 71a46d1afb8ed22c1a5d49c4ad655bc273136cfad3d67624ea940a860d610e6e files/64bit_gsize.patch 471 -AUX cdrecord2wodim.patch 3145 RMD160 a5554a0da5d1aacc3a2bce003666548a5f6977dd SHA1 c368e542e86204eb15cb4b21aecdd6cf9dd8bf80 SHA256 fc99ab5ab87a368c8db4a91161b95a9f99a1a8e9ad2550ae7926487bad875ae9 -MD5 9b8ac26bdd33d9efd0d922c6b8425df5 files/cdrecord2wodim.patch 3145 -RMD160 a5554a0da5d1aacc3a2bce003666548a5f6977dd files/cdrecord2wodim.patch 3145 -SHA256 fc99ab5ab87a368c8db4a91161b95a9f99a1a8e9ad2550ae7926487bad875ae9 files/cdrecord2wodim.patch 3145 +AUX cdrecord2wodim.patch 34941 RMD160 d3d760258fc1a740b083894621343c5301c93529 SHA1 26b18a2686c3f04010113f752a65e75a8f6ea01e SHA256 4847528936dfa2f9831cebb0a0e2c219c02d2272127a30a33934fe80fb791303 +MD5 eae3bd636794466fff18407c2fd2c2bb files/cdrecord2wodim.patch 34941 +RMD160 d3d760258fc1a740b083894621343c5301c93529 files/cdrecord2wodim.patch 34941 +SHA256 4847528936dfa2f9831cebb0a0e2c219c02d2272127a30a33934fe80fb791303 files/cdrecord2wodim.patch 34941 AUX cdrecord_versions.patch 618 RMD160 80bdd9c72a14e15a9b03c7da816ead3bcebde03a SHA1 e9bc050764c6163407047518eb16e411c74bd42c SHA256 932e60ade91c9e8894ac25703b825632e9b194090ba1b27374df5eb7f3a1b435 MD5 2b03f1e7e4200d6e5a8faf0f760c706c files/cdrecord_versions.patch 618 RMD160 80bdd9c72a14e15a9b03c7da816ead3bcebde03a files/cdrecord_versions.patch 618 @@ -32,10 +32,10 @@ EBUILD xcdroast-0.98_alpha15-r4.ebuild 1506 RMD160 9cb0b816e738177728ca12af76c90 MD5 16541cf8a812fec8353aa960aa5b0deb xcdroast-0.98_alpha15-r4.ebuild 1506 RMD160 9cb0b816e738177728ca12af76c90bef42957680 xcdroast-0.98_alpha15-r4.ebuild 1506 SHA256 cc9cf3bd539d8716fc7b1cc8cc33fbaf20d916a2448b3bcc4f4538c721813704 xcdroast-0.98_alpha15-r4.ebuild 1506 -MISC ChangeLog 8782 RMD160 a47d0dba419c078d1bf2bff9f399c24b1174de47 SHA1 eae9f72ea7fdbb588b13f5d9e6deadeed34977a3 SHA256 e5657a74d61f132bcf3e4a4a62da075e28e259a204d098c4faa6c058651d8a3e -MD5 5bd372880acdc0f304e9aa1d3aac111e ChangeLog 8782 -RMD160 a47d0dba419c078d1bf2bff9f399c24b1174de47 ChangeLog 8782 -SHA256 e5657a74d61f132bcf3e4a4a62da075e28e259a204d098c4faa6c058651d8a3e ChangeLog 8782 +MISC ChangeLog 8973 RMD160 dee2d6f50bd6935c33a680eb93d1e8b2683bac36 SHA1 8f773b10bcb18aa34c3af16ad484f18a33d9eebd SHA256 09f65b8b9a621d00796c1a2e3ae9cafe7f06caed0e1c2a7bea2e4d92c7ce6438 +MD5 e5097278f72015b6603488cec98a7f1f ChangeLog 8973 +RMD160 dee2d6f50bd6935c33a680eb93d1e8b2683bac36 ChangeLog 8973 +SHA256 09f65b8b9a621d00796c1a2e3ae9cafe7f06caed0e1c2a7bea2e4d92c7ce6438 ChangeLog 8973 MISC metadata.xml 247 RMD160 7a2b92c08eec2dc74474226529601870161ced75 SHA1 30e2f8e33a1a0ccd255272d40b84fadfe13c90d5 SHA256 4e1e94075219a6cc8cde9d7249eeacbb64f0ec101401aa58aec45e5ad901f2ed MD5 c7cf0bf2a01fd5bb41778f1941040287 metadata.xml 247 RMD160 7a2b92c08eec2dc74474226529601870161ced75 metadata.xml 247 diff --git a/app-cdr/xcdroast/files/cdrecord2wodim.patch b/app-cdr/xcdroast/files/cdrecord2wodim.patch index 11668c540fe7..a9be96c7c6b7 100644 --- a/app-cdr/xcdroast/files/cdrecord2wodim.patch +++ b/app-cdr/xcdroast/files/cdrecord2wodim.patch @@ -1,7 +1,407 @@ -diff -urNad xcdroast-0.98+0alpha15~/src/io.c xcdroast-0.98+0alpha15/src/io.c ---- xcdroast-0.98+0alpha15~/src/io.c 2006-09-09 16:24:37.000000000 +0200 -+++ xcdroast-0.98+0alpha15/src/io.c 2006-09-09 16:26:32.000000000 +0200 -@@ -1273,7 +1273,7 @@ +diff -pur xcdroast-0.98alpha15.orig/src/create.c xcdroast-0.98alpha15/src/create.c +--- xcdroast-0.98alpha15.orig/src/create.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/create.c 2006-11-12 08:37:51.000000000 +0100 +@@ -523,7 +523,7 @@ GtkWidget *scrolled_win, *list; + gtk_widget_show(tbl); + vbox = gtk_vbox_new(FALSE,10); + gtk_table_attach_defaults(GTK_TABLE(tbl),vbox,1,2,0,1); +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + f1 = gtk_frame_new(_("CD-Information")); + } else { + f1 = gtk_frame_new(_("CD/DVD-Information")); +@@ -1260,7 +1260,7 @@ GtkWidget *scrolled_win, *img_list; + gtk_widget_show(tbl); + vbox = gtk_vbox_new(FALSE,10); + gtk_table_attach_defaults(GTK_TABLE(tbl),vbox,0,1,0,1); +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + f1 = gtk_frame_new(_("CD-Information")); + } else { + f1 = gtk_frame_new(_("CD/DVD-Information")); +@@ -2979,7 +2979,7 @@ GtkTargetEntry target_entry[3]; + GTK_SIGNAL_FUNC(fixate_clicked), NULL); + define_tooltip(b1,_("Just fixate (close) the CD, if for some reason the CD has been written but not fixated.")); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + b1 = gtk_button_new_with_label(_("Blank CD-RW")); + } else { + b1 = gtk_button_new_with_label(_("Blank CD/DVD+-RW")); +@@ -3086,7 +3086,7 @@ GtkTargetEntry target_entry[3]; + gtk_widget_show (menu_item); + i++; + } +- if (curset.isProDVD) { ++ if (curset.isDVD) { + i = 0; + tmpval = curset.cdrtype; + while (dvdtypes[i] != 0) { +@@ -5774,7 +5774,7 @@ GtkObject *adj; + bootable_frame1 = NULL; + bootable_frame2 = NULL; + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + f1 = gtk_frame_new(_("Options to create a bootable CD")); + } else { + f1 = gtk_frame_new(_("Options to create a bootable CD/DVD")); +@@ -5794,7 +5794,7 @@ GtkObject *adj; + gtk_box_pack_start(GTK_BOX(vbox),tbl,FALSE,FALSE,0); + gtk_widget_show(tbl); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + l1 = rightjust_gtk_label_new(_("Make CD bootable?")); + } else { + l1 = rightjust_gtk_label_new(_("Make CD/DVD bootable?")); +@@ -6792,7 +6792,7 @@ gint sel, btn; + fill_session_available(); + /* force recalc of session size if dvd */ + /* so he will get the multisession warning */ +- if (curset.cdrtype >= 1000 && curset.isProDVD == 1 && curset.multisession == 1) { ++ if (curset.cdrtype >= 1000 && curset.isDVD == 1 && curset.multisession == 1) { + set_sessionsize_unknown(); + } + break; +@@ -7023,7 +7023,7 @@ gchar tmp2[MAXLINE]; + gtk_widget_show (menu_item); + i++; + } +- if (curset.isProDVD) { ++ if (curset.isDVD) { + i = 0; + tmpval = curset.cdrtype; + while (dvdtypes[i] != 0) { +@@ -7174,7 +7174,7 @@ gchar tmp2[MAXLINE]; + gtk_widget_show(b1); + define_tooltip(b1,_("Set additional write options for advanced users.")); + /* blank button */ +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + b1 = gtk_button_new_with_label(_("Blank CD-RW")); + } else { + b1 = gtk_button_new_with_label(_("Blank CD/DVD+-RW")); +diff -pur xcdroast-0.98alpha15.orig/src/duplicate.c xcdroast-0.98alpha15/src/duplicate.c +--- xcdroast-0.98alpha15.orig/src/duplicate.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/duplicate.c 2006-11-12 08:37:51.000000000 +0100 +@@ -1156,7 +1156,7 @@ GtkWidget *scrolled_win; + gtk_table_set_col_spacings(GTK_TABLE(tbl),10); + gtk_box_pack_start(GTK_BOX(actionspace),tbl,TRUE,TRUE,10); + gtk_widget_show(tbl); +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + f1 = gtk_frame_new(_("CD-Information")); + } else { + f1 = gtk_frame_new(_("CD/DVD-Information")); +@@ -1739,7 +1739,7 @@ GtkWidget *tbl, *check; + gtk_widget_show(tbl); + vbox = gtk_vbox_new(FALSE,10); + gtk_table_attach_defaults(GTK_TABLE(tbl),vbox,0,1,0,1); +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + f1 = gtk_frame_new(_("CD-Information")); + } else { + f1 = gtk_frame_new(_("CD/DVD-Information")); +@@ -2241,7 +2241,7 @@ GtkWidget *tbl, *omenu, *check; + gtk_widget_show(tbl); + vbox = gtk_vbox_new(FALSE,10); + gtk_table_attach_defaults(GTK_TABLE(tbl),vbox,0,1,0,1); +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + f1 = gtk_frame_new(_("CD-Information")); + } else { + f1 = gtk_frame_new(_("CD/DVD-Information")); +@@ -3090,7 +3090,7 @@ gint menuidx, menuhistory; + gtk_table_set_col_spacings(GTK_TABLE(tbl),10); + gtk_box_pack_start(GTK_BOX(actionspace),tbl,TRUE,TRUE,10); + gtk_widget_show(tbl); +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + f1 = gtk_frame_new(_("CD to write")); + } else { + f1 = gtk_frame_new(_("CD/DVD to write")); +@@ -3107,7 +3107,7 @@ gint menuidx, menuhistory; + hbox = gtk_hbox_new(TRUE,10); + gtk_box_pack_start(GTK_BOX(actionspace),hbox,FALSE,TRUE,5); + gtk_widget_show(hbox); +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + b1 = gtk_button_new_with_label(_("Write CD")); + } else { + b1 = gtk_button_new_with_label(_("Write CD/DVD")); +@@ -3118,7 +3118,7 @@ gint menuidx, menuhistory; + GTK_SIGNAL_FUNC(writetracks_clicked), NULL); + define_tooltip(b1,_("Writes all tracks specified by the TOC file to a CD.")); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + b1 = gtk_button_new_with_label(_("Blank CD-RW")); + } else { + b1 = gtk_button_new_with_label(_("Blank CD/DVD+-RW")); +@@ -3239,7 +3239,7 @@ gint menuidx, menuhistory; + gtk_widget_show (menu_item); + i++; + } +- if (curset.isProDVD) { ++ if (curset.isDVD) { + i = 0; + tmpval = curset.cdrtype; + while (dvdtypes[i] != 0) { +@@ -3984,7 +3984,7 @@ GtkWidget *b1; + side_widgets[0] = b1; + define_tooltip(b1,_("Displays information about the currently inserted CD and tracks stored on the harddrive.")); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + b1 = gtk_toggle_button_new_with_label(_("Read CD")); + } else { + b1 = gtk_toggle_button_new_with_label(_("Read CD/DVD")); +@@ -3996,7 +3996,7 @@ GtkWidget *b1; + side_widgets[1] = b1; + define_tooltip(b1,_("Reads all tracks of a CD and copy them to the harddrive.")); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + b1 = gtk_toggle_button_new_with_label(_("Verify CD")); + } else { + b1 = gtk_toggle_button_new_with_label(_("Verify CD/DVD")); +@@ -4016,7 +4016,7 @@ GtkWidget *b1; + side_widgets[3] = b1; + define_tooltip(b1,_("Plays audio tracks (.wav files) from the harddrive via soundcard.")); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + b1 = gtk_toggle_button_new_with_label(_("Write CD")); + } else { + b1 = gtk_toggle_button_new_with_label(_("Write CD/DVD")); +diff -pur xcdroast-0.98alpha15.orig/src/init.c xcdroast-0.98alpha15/src/init.c +--- xcdroast-0.98alpha15.orig/src/init.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/init.c 2006-11-12 08:37:51.000000000 +0100 +@@ -80,8 +80,10 @@ gint c_locale_is_utf8; + gchar *language = NULL; + GdkFont *fixedfont; + ++#ifndef CDRECORDDVD_IS_FREE + /* ProDVD key in global variable to let solaris-putenv access it */ + gchar security_key[MAXLINE]; ++#endif + + /* give the setupdata-structure valid startvalues */ + +@@ -136,7 +138,9 @@ gint fullaccess; + setupdata.root_option_change_imagedirs = fullaccess; + setupdata.root_option_change_logoptions = fullaccess; + ++#ifndef CDRECORDDVD_IS_FREE + setupdata.ProDVDkey = g_strdup(""); ++#endif + + setupdata.mainwindow.x = -1; + setupdata.mainwindow.y = -1; +@@ -156,7 +160,7 @@ static void init_curset() { + gint cdrtypes[] = CDR_TYPES_MIN; + gint i; + +- curset.isProDVD = 0; ++ curset.isDVD = 0; + curset.support_ontheflyaudio = 0; + curset.writer_devnr = -1; + curset.reader_devnr = -1; +@@ -391,16 +395,16 @@ gint second; + } + + /* check if needed binaries are installed */ +-/* return if proDVD version found */ ++/* return if (pro)DVD version found */ + + static gint check_binaries(gint noversioncheck) { + gchar tmp[MAXLINE]; + gchar ver[MAXLINE]; + gchar link[MAXLINE]; + gint stat; +-gint out, isProDVD; ++gint out, isDVD; + +- isProDVD = 0; ++ isDVD = 0; + check_executable(UNAME,UNAME2,0); + check_executable(DF,DF2,0); + +@@ -416,7 +420,7 @@ gint out, isProDVD; + } + stat = check_version_cdrecord(CDRECORD_VERSION, 0, ver, &out); + if (stat == 1 && !noversioncheck) { +- g_warning("Invalid cdrecord version %s found.\n\tExpecting at least version %s\n\tStart xcdroast with the -n option to override (not recommended!)", ver, CDRECORD_VERSION); ++ g_warning("Invalid " CDRECORD_NAME " version %s found.\n\tExpecting at least version %s\n\tStart xcdroast with the -n option to override (not recommended!)", ver, CDRECORD_VERSION); + gtk_exit(1); + } + if (stat == 2) { +@@ -424,8 +428,8 @@ gint out, isProDVD; + gtk_exit(1); + } + +- /* check optional installation of ProDVD version */ +- get_spawn_path(CDRECORDPRODVD,tmp); ++ /* check optional installation of (Pro)DVD version */ ++ get_spawn_path(CDRECORDDVD,tmp); + if (is_file(tmp)) { + if (check_islink(tmp, link)) { + #if 0 +@@ -434,9 +438,9 @@ gint out, isProDVD; + dodebug(3, "%s is a link to %s\n", tmp, link); + #endif + } +- stat = check_version_cdrecord(CDRECORD_PRODVD_VERSION, 1, ver, &isProDVD); ++ stat = check_version_cdrecord(CDRECORDDVD_VERSION, 1, ver, &isDVD); + if (stat == 1 && !noversioncheck) { +- g_warning("Invalid cdrecord-ProDVD version %s found.\n\tExpecting at least version %s\n\tStart xcdroast with the -n option to override (not recommended!)", ver, CDRECORD_PRODVD_VERSION); ++ g_warning("Invalid " CDRECORDDVD_NAME " version %s found.\n\tExpecting at least version %s\n\tStart xcdroast with the -n option to override (not recommended!)", ver, CDRECORDDVD_VERSION); + gtk_exit(1); + } + } +@@ -508,7 +512,7 @@ gint out, isProDVD; + g_snprintf(tmp,MAXLINE,"%s/%s", sharedir, CDDBTOOL); + check_executable(tmp,NULL,1); + +- return isProDVD; ++ return isDVD; + } + + +@@ -701,7 +705,7 @@ gint nofail; + } + + /* check prodvd only when it is installed */ +- get_spawn_path(CDRECORDPRODVD,tmp); ++ get_spawn_path(CDRECORDDVD,tmp); + if (is_file(tmp)) { + if (check_nonroot_mode_cdrtools(tmp) == 0) { + nofail = 0; +@@ -768,7 +772,8 @@ static void usage(gchar *cmd) { + /* g_print("\t-r (currently: %s)\n", rootconfig); */ + g_print("\t-o : Disable multibyte font support\n"); + g_print("\t-n : Disable cdrtools version check (use at own risk)\n"); +- g_print("\t-w : Don't use cdrecord-ProDVD, even when it is available.\n"); ++ if (strcmp(CDRECORD, CDRECORDDVD)) ++ g_print("\t-w : Don't use " CDRECORDDVD_NAME ", even when it is available.\n"); + #if (defined(__MACH__) && defined(__APPLE__)) + g_print("\t-a : Don't display the autodiskmount daemon handling at startup\n"); + #else +@@ -796,7 +801,7 @@ gchar *mylocale; + gchar *p1; + gchar *alt_dev_string; + gint c, usercnf, stat; +-gint isProDVD, ignoreProDVD; ++gint isDVD, ignoreDVD; + + if (!language) + language = g_strdup(""); +@@ -806,7 +811,7 @@ gint isProDVD, ignoreProDVD; + no_versioncheck = 0; + support_ontheflyaudio = 0; + c_locale_is_utf8 = 0; +- ignoreProDVD = 0; ++ ignoreDVD = 0; + alt_dev_string = NULL; + strncpy(configdir, CONFIGDIR, MAXLINE); + g_snprintf(rootconfig, MAXLINE, "%s/%s", SYSCONFDIR, ROOTCONFIG); +@@ -867,7 +872,7 @@ gint isProDVD, ignoreProDVD; + break; + + case 'w': +- ignoreProDVD = 1; ++ ignoreDVD = 1; + break; + + case 'f': +@@ -967,17 +972,19 @@ gint isProDVD, ignoreProDVD; + #endif + + dodebug(3, "Checking for helper binaries (noversioncheck = %d)\n", no_versioncheck); +- isProDVD = check_binaries(no_versioncheck); ++ isDVD = check_binaries(no_versioncheck); + +- if (isProDVD) { +- if (ignoreProDVD) { +- isProDVD = 0; +- dodebug(1,"-> cdrecord.ProDVD detected but disabled\n"); +- } else { +- dodebug(1,"-> cdrecord.ProDVD detected\n"); ++ if (strcmp(CDRECORD, CDRECORDDVD)) { ++ if (isDVD) { ++ if (ignoreDVD) { ++ isDVD = 0; ++ dodebug(1,"-> " CDRECORDDVD_NAME " detected but disabled\n"); ++ } else { ++ dodebug(1,"-> " CDRECORDDVD_NAME " detected\n"); ++ } ++ } else { ++ dodebug(1,"-> " CDRECORDDVD_NAME " not detected\n"); + } +- } else { +- dodebug(1,"-> cdrecord.ProDVD not detected\n"); + } + if (support_ontheflyaudio == 1) { + dodebug(1, " Enabled support for on-the-fly audio\n"); +@@ -1018,7 +1025,7 @@ gint isProDVD, ignoreProDVD; + tocfiles = (GList *) NULL; + strcpy(xcdroast_version_loaded, ""); + +- curset.isProDVD = isProDVD; ++ curset.isDVD = isDVD; + curset.support_ontheflyaudio = support_ontheflyaudio; + + /* load iso-options if available */ +@@ -1139,7 +1146,8 @@ gint isProDVD, ignoreProDVD; + } + #endif + +- if (curset.isProDVD == 1) { ++#ifndef CDRECORDDVD_IS_FREE ++ if (curset.isDVD == 1) { + /* set key if we got one from the config-file */ + if (strcmp(setupdata.ProDVDkey,"")) { + +@@ -1152,6 +1160,7 @@ gint isProDVD, ignoreProDVD; + #endif + } + } ++#endif + + if (usercnf == 0) { + /* load ok */ +diff -pur xcdroast-0.98alpha15.orig/src/io.c xcdroast-0.98alpha15/src/io.c +--- xcdroast-0.98alpha15.orig/src/io.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/io.c 2006-11-12 08:37:51.000000000 +0100 +@@ -693,7 +693,7 @@ gint found; + strncpy(tmp2,dev,MAXLINE); + convert_escape(tmp2); + +- g_snprintf(tmp,MAXLINE," -scanbus dev= \"%s\" 2>&1",tmp2); ++ g_snprintf(tmp,MAXLINE," -scanbus dev= \"%s\" 2>/dev/null",tmp2); + strcat(line,tmp); + + dodebug(1, "calling: %s\n", line); +@@ -912,7 +912,7 @@ scsi_devices_t **scsidevices; + + /* traditional scanning first */ + get_wrap_path_cdrecord(line); +- strcat(line," -scanbus 2>&1"); ++ strcat(line," -scanbus 2>/dev/null"); + + dodebug(1, "calling: %s\n", line); + if ((fpin = popen(line,"r")) == NULL) { +@@ -963,7 +963,7 @@ scsi_devices_t **scsidevices; + scsicount = 0; + + get_wrap_path_cdrecord(line); +- g_snprintf(tmp,MAXLINE," dev=%s -scanbus 2>&1", transport); ++ g_snprintf(tmp,MAXLINE," dev=%s -scanbus 2>/dev/null", transport); + strcat(line, tmp); + + dodebug(1, "calling: %s\n", line); +@@ -1272,7 +1272,7 @@ FILE *fpin; drvcount = 0; get_wrap_path_cdrecord(line); @@ -10,7 +410,75 @@ diff -urNad xcdroast-0.98+0alpha15~/src/io.c xcdroast-0.98+0alpha15/src/io.c dodebug(1, "calling: %s\n", line); if ((fpin = popen(line,"r")) == NULL) { -@@ -5856,7 +5856,7 @@ +@@ -1479,9 +1479,9 @@ gchar *p; + + if (!dev) return; + +- /* if prodvd available use it to get additional info */ +- if (curset.isProDVD) { +- get_wrap_path("CDRECORDPRODVD", tmp); ++ /* if (pro)dvd available use it to get additional info */ ++ if (curset.isDVD) { ++ get_wrap_path("CDRECORDDVD", tmp); + } else { + get_wrap_path("CDRECORD", tmp); + } +@@ -2099,9 +2099,11 @@ gint count; + g_snprintf(tmp,MAXLINE,"OPTION_SELECTIONMODE = %d\n",setupdata.option_selectionmode); + fputs(tmp,fd); + ++#ifndef CDRECORDDVD_IS_FREE + strcpy(tmp2,setupdata.ProDVDkey); + g_snprintf(tmp,MAXLINE,"PRODVD_KEY = \"%s\"\n",convert_escape(tmp2)); + fputs(tmp,fd); ++#endif + + /* save geometry data? */ + if (setupdata.option_savepos) { +@@ -2216,6 +2218,7 @@ gint count, i, newadded; + if (fgets(line,MAXLINE,fd) == NULL) + break; + ++#ifndef CDRECORDDVD_IS_FREE + /* special case here to protect pro-dvd-key */ + if (strstr(line, "PRODVD_KEY") && strlen(line) > 50) { + strncpy(tmp,line,50); +@@ -2224,6 +2227,7 @@ gint count, i, newadded; + } else { + dodebug(10,"config: %s", line); + } ++#endif + + /* skip empty or hashed lines */ + strip_string(line); +@@ -2503,6 +2507,7 @@ gint count, i, newadded; + if (strcmp("OPTION_SELECTIONMODE",id) == 0) { + setupdata.option_selectionmode = atoi(value); + } ++#ifndef CDRECORDDVD_IS_FREE + if (strcmp("PRODVD_KEY",id) == 0) { + /* dont overwrite evtuelly set value with empty key */ + if (strcmp(value,"") != 0) { +@@ -2510,6 +2515,7 @@ gint count, i, newadded; + setupdata.ProDVDkey = g_strdup(value); + } + } ++#endif + if (setupdata.option_savepos) { + if (strcmp("GEOMETRY_MAINWINDOW_X",id) == 0) { + setupdata.mainwindow.x = atoi(value); +@@ -5545,8 +5551,8 @@ gint found_atip,errcount; + } + + /* build command line */ +- if (curset.isProDVD) { +- get_wrap_path("CDRECORDPRODVD", tmp3); ++ if (curset.isDVD) { ++ get_wrap_path("CDRECORDDVD", tmp3); + } else { + get_wrap_path("CDRECORD", tmp3); + } +@@ -5855,7 +5861,7 @@ FILE *fpin; drvcount = 0; get_wrap_path_cdrecord(line); @@ -19,7 +487,162 @@ diff -urNad xcdroast-0.98+0alpha15~/src/io.c xcdroast-0.98+0alpha15/src/io.c dodebug(1, "calling: %s\n", line); -@@ -9913,7 +9913,7 @@ +@@ -5979,11 +5985,12 @@ gchar tmp[MAXLINE]; + dialog_done = -1; + } + ++#ifndef CDRECORDDVD_IS_FREE + /* or cdrecord died by signal? e.g. SIGALRM */ + if (WIFSIGNALED(ret) && read_done == 0) { + + /* most likely invalid prodvd key */ +- if (curset.isProDVD) { ++ if (curset.isDVD) { + strncpy(tmp, "\nReceived ALARM from cdrecord-ProDVD. Aborting blank...\nInvalid ProDVD key?\n", MAXLINE); + + convert_for_gtk2_textwidget(tmp); +@@ -5992,6 +5999,7 @@ gchar tmp[MAXLINE]; + read_done = 1; + } + } ++#endif + + dodebug(10,"Finished in read_blank_out with status: %d\n", + read_done); +@@ -6157,8 +6165,8 @@ gint ret; + strcat(tmp3, tmp4); + } + +- if (curset.isProDVD) { +- get_wrap_path("CDRECORDPRODVD", tmp5); ++ if (curset.isDVD) { ++ get_wrap_path("CDRECORDDVD", tmp5); + } else { + get_wrap_path("CDRECORD", tmp5); + } +@@ -6366,14 +6374,16 @@ gint cdrecord_stderr; + dialog_done = -1; + } + ++#ifndef CDRECORDDVD_IS_FREE + /* or cdrecord died by signal? e.g. SIGALRM */ + if (WIFSIGNALED(ret) && read_done == 0) { + + /* most likely invalid prodvd key */ +- if (curset.isProDVD && curset.cdrtype > 1000) { ++ if (curset.isDVD && curset.cdrtype > 1000) { + read_done = 2; + } + } ++#endif + + dodebug(10,"Finished in read_write_out with status: %d\n", + read_done); +@@ -6399,8 +6409,9 @@ gint cdrecord_stderr; + return; + } + ++#ifndef CDRECORDDVD_IS_FREE + /* prodvd and beginning to write soon? */ +- if (curset.isProDVD && curset.cdrtype > 1000) { ++ if (curset.isDVD && curset.cdrtype > 1000) { + if (strstr(line,"Last chance to quit")) { + cdrtimer = gtk_timeout_add(1000, + cdrtimer_callback, NULL); +@@ -6415,6 +6426,7 @@ gint cdrecord_stderr; + } + } + } ++#endif + + /* skip all lines that contain "seconds." */ + if (n > 8) { +@@ -6705,6 +6717,7 @@ gchar *p; + } + + ++#ifndef CDRECORDDVD_IS_FREE + /* display an error when useing prodvd and cdrecord aborts */ + + static void display_invalid_prodvdkey() { +@@ -6713,6 +6726,7 @@ static void display_invalid_prodvdkey() + show_dialog(ICO_WARN, _("cdrecord-ProDVD terminated.\n\nMost likely because you have entered\nan invalid key. Please check if it is correct."), T_OK, NULL, NULL, 0); + } + } ++#endif + + + /* call cdrecord to write some tracks */ +@@ -6961,10 +6975,12 @@ gint wrmode; + if (read_done != 0 || read_output_ctrl == 5) { + gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Error writing tracks")); + gtk_label_set_text(GTK_LABEL(readtrack_small_info),_("Write-Error:")); ++#ifndef CDRECORDDVD_IS_FREE + if (read_done == 2) { + /* invalid cdrecord key - show window */ + display_invalid_prodvdkey(); + } ++#endif + return 1; + } else { + /* all ok */ +@@ -7559,10 +7575,12 @@ gfloat per; + if (read_done != 0 || read_output_ctrl == 5) { + gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Error writing tracks")); + gtk_label_set_text(GTK_LABEL(readtrack_small_info),_("Write-Error:")); ++#ifndef CDRECORDDVD_IS_FREE + if (read_done == 2) { + /* invalid cdrecord key - show window */ + display_invalid_prodvdkey(); + } ++#endif + return 1; + } else { + /* all ok */ +@@ -7728,10 +7746,12 @@ gint wrmode; + if (read_done != 0 || read_output_ctrl == 5) { + gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Error writing tracks")); + gtk_label_set_text(GTK_LABEL(readtrack_small_info),_("Write-Error:")); ++#ifndef CDRECORDDVD_IS_FREE + if (read_done == 2) { + /* invalid cdrecord key - show window */ + display_invalid_prodvdkey(); + } ++#endif + return 1; + } else { + /* all ok */ +@@ -9881,10 +9901,12 @@ gint wrmode; + if (read_done != 0 || read_output_ctrl == 5) { + gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Error writing tracks")); + gtk_label_set_text(GTK_LABEL(readtrack_small_info),_("Write-Error:")); ++#ifndef CDRECORDDVD_IS_FREE + if (read_done == 2) { + /* invalid cdrecord key - show window */ + display_invalid_prodvdkey(); + } ++#endif + return 1; + } else { + /* all ok */ +@@ -9898,21 +9920,21 @@ gint wrmode; + /* check the version of cdrecord */ + /* return 1 if not correct (to old) */ + +-gint check_version_cdrecord(gchar *match, gint dvd, gchar *found, gint *isProDVD) { ++gint check_version_cdrecord(gchar *match, gint dvd, gchar *found, gint *isDVD) { + gchar line[MAXLINE]; + gchar vline[MAXLINE]; + gchar ver[MAXLINE]; + FILE *fpin; + gchar *p; + +- *isProDVD = 0; ++ *isDVD = 0; + strcpy(ver,""); + if (dvd) { +- get_wrap_path("CDRECORDPRODVD",line); ++ get_wrap_path("CDRECORDDVD",line); } else { get_wrap_path("CDRECORD",line); } @@ -28,7 +651,26 @@ diff -urNad xcdroast-0.98+0alpha15~/src/io.c xcdroast-0.98+0alpha15/src/io.c dodebug(1, "calling: %s\n", line); if ((fpin = popen(line,"r")) == NULL) { -@@ -10137,7 +10137,7 @@ +@@ -9953,7 +9975,7 @@ gchar *p; + } else { + p = strstr(vline, "Cdrecord-ProDVD-Clone"); + if (p != NULL) { +- *isProDVD = 1; ++ *isDVD = 1; + p = strtok(p+22, " "); + if (p != NULL) { + strcpy(ver,p); +@@ -9967,6 +9989,9 @@ gchar *p; + p = strtok(NULL, " "); + if (p) { + strcpy(ver,p); ++ if (strstr(ver,"-dvd")) { ++ *isDVD = 1; ++ } + } + } + } +@@ -10136,7 +10161,7 @@ gchar *p; strcpy(ver,""); get_wrap_path("READCD",line); @@ -37,51 +679,320 @@ diff -urNad xcdroast-0.98+0alpha15~/src/io.c xcdroast-0.98+0alpha15/src/io.c dodebug(1, "calling: %s\n", line); if ((fpin = popen(line,"r")) == NULL) { - -diff -urNad xcdroast-0.98alpha15.orig/src/main.c xcdroast-0.98alpha15/src/main.c ---- xcdroast-0.98alpha15.orig/src/main.c 2006-11-11 04:38:39.000000000 +0100 -+++ xcdroast-0.98alpha15/src/main.c 2006-11-11 04:39:33.000000000 +0100 -@@ -586,13 +586,13 @@ +diff -pur xcdroast-0.98alpha15.orig/src/main.c xcdroast-0.98alpha15/src/main.c +--- xcdroast-0.98alpha15.orig/src/main.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/main.c 2006-11-12 08:37:51.000000000 +0100 +@@ -226,7 +226,7 @@ gchar tmp[MAXLINE]; + gtk_box_pack_start(GTK_BOX(sidespace), side_t,TRUE,TRUE,0); + + side_t_btn1 = gtk_button_new_with_label (_("Setup")); +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + side_t_btn2 = gtk_button_new_with_label (_("Duplicate CD")); + side_t_btn3 = gtk_button_new_with_label (_("Create CD")); + } else { +@@ -581,18 +581,20 @@ gint stat; + */ + + /* warn about non-existing LFS support in dvd mode */ +- if (curset.isProDVD == 1 && sizeof(off_t) != 8) { ++ if (curset.isDVD == 1 && sizeof(off_t) != 8) { + show_dialog(ICO_WARN, _("Warning: Your system is not able to create files larger\nthan 2 GB. Writing DVDs will therefore not possible."), T_OK, NULL, NULL, 0); } ++#ifndef CDRECORDDVD_IS_FREE /* if we are in DVD mode, check if the security-key is set */ - if (curset.isProDVD == 1) { -+ /* if (curset.isProDVD == 1) { ++ if (curset.isDVD == 1) { keyenv = getenv("CDR_SECURITY"); if (keyenv == NULL) { show_dialog(ICO_WARN, _("Warning: You have not entered a cdrecord-ProDVD key in setup.\nPlease see the FAQ on how to obtain your free key.\nYou also have to renew the key every few months because it got an\nexpire date. You will not be able to properly write DVDs without it."), T_OK, NULL, NULL, 0); } -- } -+ } */ + } ++#endif dolog(1,"Starting X-CD-Roast\n"); -diff -urNad xcdroast-0.98alpha15.orig/src/xcdroast.h xcdroast-0.98alpha15/src/xcdroast.h ---- xcdroast-0.98alpha15.orig/src/xcdroast.h 2006-11-11 04:38:39.000000000 +0100 -+++ xcdroast-0.98alpha15/src/xcdroast.h 2006-11-11 04:38:51.000000000 +0100 -@@ -113,7 +113,7 @@ +diff -pur xcdroast-0.98alpha15.orig/src/main.h xcdroast-0.98alpha15/src/main.h +--- xcdroast-0.98alpha15.orig/src/main.h 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/main.h 2006-11-12 08:37:51.000000000 +0100 +@@ -194,7 +194,7 @@ gint show_and_start_master(); + gint start_master_action(); + gint start_onthefly_master_action(gint write_devnr); + +-gint check_version_cdrecord(gchar *match, gint dvd, gchar *found, gint *isProDVD); ++gint check_version_cdrecord(gchar *match, gint dvd, gchar *found, gint *isDVD); + gint check_version_mkisofs(gchar *match, gchar *found); + gint check_version_cdda2wav(gchar *match, gchar *found); + gint check_version_readcd(gchar *match, gchar *found); +diff -pur xcdroast-0.98alpha15.orig/src/menus.c xcdroast-0.98alpha15/src/menus.c +--- xcdroast-0.98alpha15.orig/src/menus.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/menus.c 2006-11-12 08:37:51.000000000 +0100 +@@ -2701,7 +2701,7 @@ static const gchar *blanktrans[] = BLANK + gtk_container_set_border_width (GTK_CONTAINER (box1), 5); + gtk_container_add(GTK_CONTAINER(dialog),box1); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + f1 = gtk_frame_new(_("Blank CD-RW")); + } else { + f1 = gtk_frame_new(_("Blank CD/DVD+-RW")); +@@ -2811,7 +2811,7 @@ static const gchar *blanktrans[] = BLANK + gtk_box_pack_start(GTK_BOX(box1),box3,FALSE,TRUE,5); + gtk_widget_show(box3); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + button1 = gtk_button_new_with_label(_("Blank CD-RW")); + } else { + button1 = gtk_button_new_with_label(_("Blank CD/DVD+-RW")); +diff -pur xcdroast-0.98alpha15.orig/src/setup.c xcdroast-0.98alpha15/src/setup.c +--- xcdroast-0.98alpha15.orig/src/setup.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/setup.c 2006-11-12 08:37:51.000000000 +0100 +@@ -132,8 +132,10 @@ gint i,j; + g_free(bak_setupdata.cddb_proxy_host); + setupdata.logfile = g_strdup(bak_setupdata.logfile); + g_free(bak_setupdata.logfile); ++#ifndef CDRECORDDVD_IS_FREE + setupdata.ProDVDkey = g_strdup(bak_setupdata.ProDVDkey); + g_free(bak_setupdata.ProDVDkey); ++#endif + + /* restore and free also writerreader structure copy */ + if (bak_writerreader) { +@@ -263,6 +265,7 @@ gchar *buf, *locreturn, *p; + /* check_tilde(tmp); */ + setupdata.logfile = g_strdup(tmp); + ++#ifndef CDRECORDDVD_IS_FREE + g_free(setupdata.ProDVDkey); + n = gtk_text_get_length(GTK_TEXT(prodvdkey_txt)); + buf = gtk_editable_get_chars(GTK_EDITABLE(prodvdkey_txt),0,n); +@@ -281,6 +284,7 @@ gchar *buf, *locreturn, *p; + #else + putenv(security_key); + #endif ++#endif + + /* save the current window size if we are asked to */ + if (setupdata.option_savepos) { +@@ -305,8 +309,8 @@ gchar tmp[MAXLINE]; + dolog(2, "Confirm setup\n"); + + /* some lasts checks and warnings */ +- if (is_dvdwriter(setupdata.writer_devnr) && !curset.isProDVD) { +- ret = show_dialog(ICO_WARN, _("Please note that you have to install ProDVD support before\nyou can write DVDs. Currently you will only be able to\nwrite regular CDs with your DVD-Writer."), T_OK,T_CANCEL, NULL, 0); ++ if (is_dvdwriter(setupdata.writer_devnr) && !curset.isDVD) { ++ ret = show_dialog(ICO_WARN, _("Please note that you have to install DVD support before\nyou can write DVDs. Currently you will only be able to\nwrite regular CDs with your DVD-Writer."), T_OK,T_CANCEL, NULL, 0); + if (ret == 1) { + /* abort */ + return; +@@ -330,7 +334,9 @@ gchar tmp[MAXLINE]; + return; + + /* free memory of backup-config */ ++#ifndef CDRECORDDVD_IS_FREE + g_free(bak_setupdata.ProDVDkey); ++#endif + g_free(bak_setupdata.logfile); + g_free(bak_setupdata.cddb_host); + g_free(bak_setupdata.cddb_proxy_host); +@@ -1137,7 +1143,7 @@ static const gchar *helpwritemodes[] = H + gtk_box_pack_start(GTK_BOX(vbox2),tbl,FALSE,TRUE,0); + gtk_widget_show(tbl); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + l1 = rightjust_gtk_label_new(_("CD Writer Device:")); + } else { + l1 = rightjust_gtk_label_new(_("CD/DVD Writer Device:")); +@@ -2737,6 +2743,7 @@ GtkWidget *check; + define_tooltip(check, _("When enabled, then multiple selections in lists are handled like the lists in Windows (hold CTRL-Key to select more than one entry and use SHIFT to select a whole range of entries).")); + + ++#ifndef CDRECORDDVD_IS_FREE + f1 = gtk_frame_new(_("cdrecord-ProDVD key")); + set_font_and_color_frame(f1,BOLDFONT,NULL); + gtk_box_pack_start(GTK_BOX(vbox),f1,TRUE,TRUE,10); +@@ -2779,6 +2786,7 @@ GtkWidget *check; + gtk_widget_set_sensitive(l1, FALSE); + gtk_widget_set_sensitive(txt, FALSE); + } ++#endif // !defined(CDRECORDDVD_IS_FREE) + } + + +@@ -3183,7 +3191,7 @@ gchar tmp[MAXLINE]; + gtk_container_add (GTK_CONTAINER (f1), tbl); + gtk_widget_show(tbl); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + check = gtk_check_button_new_with_label(_("change CD Writer Device")); + } else { + check = gtk_check_button_new_with_label(_("change CD/DVD Writer Device")); +@@ -3205,7 +3213,7 @@ gchar tmp[MAXLINE]; + gtk_widget_show(check); + define_tooltip(check, _("If enabled, then the user is allowed the change the write parameters for the CD Writer (e.g. Speed and FIFO-Buffer-Size).")); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + check = gtk_check_button_new_with_label(_("change CD Reader Device")); + } else { + check = gtk_check_button_new_with_label(_("change CD/DVD Reader Device")); +@@ -3287,7 +3295,9 @@ gint i; + bak_setupdata.cddb_host = g_strdup(setupdata.cddb_host); + bak_setupdata.cddb_proxy_host = g_strdup(setupdata.cddb_proxy_host); + bak_setupdata.logfile = g_strdup(setupdata.logfile); ++#ifndef CDRECORDDVD_IS_FREE + bak_setupdata.ProDVDkey = g_strdup(setupdata.ProDVDkey); ++#endif + + /* backup the dynamic part of the readerwriter structure too */ + bak_writerreader = g_new0(writerreader_bak_t *, MAXDEVICES); +@@ -3372,7 +3382,7 @@ gint i; + gtk_notebook_append_page(GTK_NOTEBOOK (notebook),f1,l1); + draw_scsi_scan(f1); + +- if (!curset.isProDVD) { ++ if (!curset.isDVD) { + l2 = gtk_label_new(_("CD Settings")); + } else { + l2 = gtk_label_new(_("CD/DVD Settings")); +diff -pur xcdroast-0.98alpha15.orig/src/xcdrdata.h xcdroast-0.98alpha15/src/xcdrdata.h +--- xcdroast-0.98alpha15.orig/src/xcdrdata.h 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/xcdrdata.h 2006-11-12 08:37:51.000000000 +0100 +@@ -60,7 +60,9 @@ typedef struct setup_data { + gboolean root_option_change_imagedirs; + gboolean root_option_change_logoptions; + ++#ifndef CDRECORDDVD_IS_FREE + gchar *ProDVDkey; ++#endif + geometry_t mainwindow; + geometry_t burnwindow; + +@@ -120,7 +122,7 @@ typedef struct writer_driver { + } writer_driver_t; + + typedef struct current_set { +- gint isProDVD; ++ gint isDVD; + gint support_ontheflyaudio; + gint writer_devnr; + gint reader_devnr; +diff -pur xcdroast-0.98alpha15.orig/src/xcdroast.h xcdroast-0.98alpha15/src/xcdroast.h +--- xcdroast-0.98alpha15.orig/src/xcdroast.h 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/xcdroast.h 2006-11-12 08:37:51.000000000 +0100 +@@ -112,19 +112,23 @@ + then in $PREFIX (e.g. /usr/bin/cdrecord instead of /usr/local/lib/xcdroast-0.98/bin/cdrecord) */ #define CDRECORD "bin/cdrecord" -#define CDRECORDPRODVD "bin/cdrecord.prodvd" -+#define CDRECORDPRODVD "bin/cdrecord" ++#define CDRECORDDVD "bin/cdrecord" #define CDDA2WAV "bin/cdda2wav" #define READCD "bin/readcd" #define MKISOFS "bin/mkisofs" -diff -urNad xcdroast-0.98alpha15.orig/src/io.c xcdroast-0.98alpha15/src/io.c ---- xcdroast-0.98alpha15.orig/src/io.c 2006-11-11 13:39:27.000000000 +0100 -+++ xcdroast-0.98alpha15/src/io.c 2006-11-11 13:40:59.000000000 +0100 -@@ -348,6 +348,12 @@ - return; - } -+ /* as of cdrkit-1.0_pre5 we need to test for wodim: as well */ -+ strcpy(tmp,"wodim: "); -+ if (strncmp(line, tmp, strlen(tmp)) == 0) { -+ return; -+ } ++#define CDRECORD_NAME "cdrecord" ++#define CDRECORDDVD_NAME "cdrecord" ++#define CDRECORDDVD_IS_FREE + - /* a line with device-info found (by checking for ")")*/ - p1 = index(line,')'); - if (p1 != NULL && !strstr(line,")\"") && + /* MINIMUM required versions. Greater versions are now silently + accepted. + Distribution-Vendors: DO NOT TOUCH THESE! + IT WONT WORK WITH LOWER VERSIONS, EVEN WHEN YOU THINK IT DOES! */ + + #define CDRECORD_VERSION "1.11a34" +-#define CDRECORD_PRODVD_VERSION "2.01.01" ++#define CDRECORDDVD_VERSION "2.01.01" + #define CDRECORD_VERSION_WITH_ONTHFLYAUDIO "2.01.01" + #define MKISOFS_VERSION "1.15a17" + #define CDDA2WAV_VERSION "1.11a34" +diff -pur xcdroast-0.98alpha15.orig/src/xcdrwrap.c xcdroast-0.98alpha15/src/xcdrwrap.c +--- xcdroast-0.98alpha15.orig/src/xcdrwrap.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/xcdrwrap.c 2006-11-12 08:37:51.000000000 +0100 +@@ -276,8 +276,8 @@ char tmp[MAXLINE]; + strcpy(ret, CDRECORD); + return ret; + } +- if (strncmp(cmd,"CDRECORDPRODVD",MAXLINE) == 0) { +- strcpy(ret, CDRECORDPRODVD); ++ if (strncmp(cmd,"CDRECORDDVD",MAXLINE) == 0) { ++ strcpy(ret, CDRECORDDVD); + return ret; + } + if (strncmp(cmd,"CDDA2WAV",MAXLINE) == 0) { +@@ -312,9 +312,9 @@ char tmp[MAXLINE]; + #endif + /* show found paths of helper apps */ + get_spawn_path(CDRECORD, tmp, 1); +- printf("cdrecord found at: %s\n", tmp); +- get_spawn_path(CDRECORDPRODVD, tmp, 1); +- printf("cdrecord-ProDVD found at: %s\n", tmp); ++ printf(CDRECORD_NAME " found at: %s\n", tmp); ++ get_spawn_path(CDRECORDDVD, tmp, 1); ++ printf(CDRECORDDVD_NAME " found at: %s\n", tmp); + get_spawn_path(CDDA2WAV, tmp, 1); + printf("cdda2wav found at: %s\n", tmp); + get_spawn_path(READCD, tmp, 1); +diff -pur xcdroast-0.98alpha15.orig/src/xtools.c xcdroast-0.98alpha15/src/xtools.c +--- xcdroast-0.98alpha15.orig/src/xtools.c 2006-11-12 08:37:47.000000000 +0100 ++++ xcdroast-0.98alpha15/src/xtools.c 2006-11-12 08:39:45.000000000 +0100 +@@ -2384,7 +2384,7 @@ struct stat buf; + + /* reroute a command through the wrapper */ + /* cmd is one of "CDRECORD", "MKISOFS", "CDDA2WAV", "READCD" +- or "CDRECORDPRODVD" */ ++ or "CDRECORDDVD" */ + + gchar *get_wrap_path(gchar *cmd, gchar *ret) { + gchar tmp[MAXLINE]; +@@ -2396,15 +2396,15 @@ gchar tmp[MAXLINE]; + } + + /* reroute the cdrecord command through the wrapper */ +-/* determine automatically if proDVD version is needed or not */ ++/* determine automatically if (pro)DVD version is needed or not */ + + gchar *get_wrap_path_cdrecord(gchar *ret) { + gchar tmp[MAXLINE]; + + /* use DVD version if installed and media type > 1GB */ +- if (curset.isProDVD && curset.cdrtype > 1000) { ++ if (curset.isDVD && curset.cdrtype > 1000) { + g_snprintf(tmp,MAXLINE,"%s/%s %s", sharedir, WRAPPER, +- "CDRECORDPRODVD"); ++ "CDRECORDDVD"); + } else { + g_snprintf(tmp,MAXLINE,"%s/%s %s", sharedir, WRAPPER, + "CDRECORD"); +@@ -2419,7 +2419,7 @@ gchar tmp[MAXLINE]; + + gint get_gracetime() { + +- if (curset.isProDVD && curset.cdrtype > 1000) { ++ if (curset.isDVD && curset.cdrtype > 1000) { + /* use 10 seconds for prodvd, because the keycheck + can take a while... */ + return 10; +@@ -3530,7 +3530,7 @@ gint count; + + /* return whether we have a empty CD-R or DVD-R in the drive */ + /* we are sure that there IS a medium there - but we dont know which type */ +-/* check only if device is dvdwriter and we have prodvd installed */ ++/* check only if device is dvdwriter and we have (pro)dvd installed */ + + gchar *return_media_type(gint devnr) { + gchar drvflags[MAXLINE], drvmodes[MAXLINE]; +@@ -3540,7 +3540,7 @@ gint isdvd,i; + isdvd = 0; + i = get_writerreaderdevs_index(devnr); + +- if (i >= 0 && curset.isProDVD && writerreaderdevs[i]->is_dvdwriter) { ++ if (i >= 0 && curset.isDVD && writerreaderdevs[i]->is_dvdwriter) { + if (convert_devnr2busid(devnr,tmp) != 0) { + g_error("non existing cdrom?"); + } -- 2.26.2