graveman-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Graveman-cvs] Changes to graveman/current/src/cdrecord.c


From: sylvain cresto
Subject: [Graveman-cvs] Changes to graveman/current/src/cdrecord.c
Date: Tue, 08 Feb 2005 19:27:33 -0500

Index: graveman/current/src/cdrecord.c
diff -u graveman/current/src/cdrecord.c:1.13 
graveman/current/src/cdrecord.c:1.14
--- graveman/current/src/cdrecord.c:1.13        Tue Feb  8 02:32:57 2005
+++ graveman/current/src/cdrecord.c     Wed Feb  9 00:27:30 2005
@@ -55,6 +55,7 @@
 #define CDRECORD_WRITE_DUMMY "Does support test writing"
 #define CDRECORD_MAX_CDREAD_SPEED "Maximum read  speed:"
 #define CDRECORD_MAX_CDREAD_SPEED_CD "(CD"
+#define CDRECORD_MAX_CDREAD_SPEED_DVD " DVD "
 
 /* effacer un cdrw ou cloturer un cdr */
 #define CDRECORD_BLANKING_TIME "Blanking time:"
@@ -86,7 +87,7 @@
     if (!Adosimul) {
       Ltxt = g_strdup(_("Writing in progress..."));
     } else {
-      Ltxt = g_strdup(_("AABB Simulated CD writing in progress..."));
+      Ltxt = g_strdup(_("Simulated CD writing in progress..."));
     }
   } else {
     if (!Adosimul) {
@@ -237,7 +238,7 @@
 gboolean maj_drive_info(Tdriveinfo *Adrive, gchar *Adev, GError **Aerror)
 {
   gchar *Lcommandline, *Lout = NULL, *Lerr = NULL;
-  gchar *s = NULL, *f;
+  gchar *scd = NULL, *sdvd = NULL, *f;
   gint Lexit = 0;
   gboolean Lstatus;
   gint Ltype = 0;
@@ -259,24 +260,32 @@
   if (strstr(Lout, CDRECORD_READ_DVD)) Ltype += _READ_DVD;
   if (strstr(Lout, CDRECORD_WRITE_DVD)) Ltype += _WRITE_DVD;
 
-  /* vitesse de lecture maximum */
-  if ((s=strstr(Lout, CDRECORD_MAX_CDREAD_SPEED))) {
-    s+=strlen(CDRECORD_MAX_CDREAD_SPEED);
-    if ((s=strstr(s, CDRECORD_MAX_CDREAD_SPEED_CD))) {
-      s=ltrim(s+strlen(CDRECORD_MAX_CDREAD_SPEED_CD));
+  /* vitesse de lecture maximum CD */
+  if ((scd=strstr(Lout, CDRECORD_MAX_CDREAD_SPEED))) {
+    scd+=strlen(CDRECORD_MAX_CDREAD_SPEED);
+    if ((scd=strstr(scd, CDRECORD_MAX_CDREAD_SPEED_CD))) {
+      scd=ltrim(scd+strlen(CDRECORD_MAX_CDREAD_SPEED_CD));
     }
-    f=s;
+    f=scd;
     while (isdigit(*f)) f++;
-    *f=0;
+    *(f++)=0;
+
+    if ((sdvd=strstr(f, CDRECORD_MAX_CDREAD_SPEED_DVD))) {
+      sdvd=ltrim(sdvd+strlen(CDRECORD_MAX_CDREAD_SPEED_DVD));
+    }
+    f=sdvd;
+    while (isdigit(*f)) f++;
+    *(f++)=0;
   }
   
   g_free(Lout);
   g_free(Lerr);
 
-  if (!s) return FALSE;
+  if (!scd) return FALSE;
 
   Adrive->type = Ltype; /* type: lecteur ou graveur */
-  Adrive->vitesse = atoi(s);  /* vitesse de lecture ou de gravure maximum */
+  Adrive->vitesse = atoi(scd);  /* vitesse de lecture ou de gravure maximum */
+  Adrive->vitessedvd = sdvd ? atoi(sdvd) : -1;
   _DEB("== le type => %d\n", Ltype);
   _DEB("== donc la vitesse de lecture => %d\n", Adrive->vitesse  );
   return TRUE;
@@ -363,6 +372,7 @@
         /* si c'est non alors on arrete */
         *Labort = TRUE;
         Lstatus = TRUE;
+        break;
       }
 
     }
@@ -381,7 +391,7 @@
 
     Lbufvitesse = get_combo_value(Lvitesse);
     Lbufgrav = get_combo_value(Lgraveur);
-    Lcommandline = g_strdup_printf("%s dev=%s -v gracetime=2 %s%s %s %s %s %s 
%s %s %s '%s'",
+    Lcommandline = g_strdup_printf("%s dev=%s -v gracetime=2 %s%s %s %s %s %s 
%s %s %s %s '%s'",
         conf_get_string("cdrecord"), Lbufgrav, *Lbufvitesse != '0' ? "speed=" 
: "", 
         *Lbufvitesse != '0' ? Lbufvitesse : "",  
         Ldosimul ? " -dummy" : "",  /* simulation ? */
@@ -390,6 +400,7 @@
         Leject ? "-eject" : "", /* ejecter le cd apres l'operation */
         Lblank,
         Lextrapara && *Lextrapara ? *Lextrapara : "",  /* parametre 
supplementaire tel que le mode d'ecriture */
+        conf_get_boolean("overburn") ? "-overburn" : "",
         conf_get_string("cdrecordpara"),
         *Liso);
   _DEB("execution [%s]\n", Lcommandline);
@@ -765,7 +776,7 @@
      * si il faut realiser d'autre gravure sur d'autres CD-R */
     Leject = ((Lcurcd > 1 && (Lwanteject || Lcurcd<Lnbrgravure)) || (Lcurcd == 
1 && !Ldosimul && Lwanteject));
 
-    Lcommandline = g_strdup_printf("%s dev=%s -v gracetime=2 %s%s %s%s %s %s 
%s %s -pad -audio %s", 
+    Lcommandline = g_strdup_printf("%s dev=%s -v gracetime=2 %s%s %s%s %s %s 
%s %s %s -pad -audio %s", 
         conf_get_string("cdrecord"), Lbufgrav, *Lbufvitesse == '0' ? "" : 
"speed=", *Lbufvitesse == '0' ? "" : Lbufvitesse,
         Ldosimul ? " -dummy" : "",  /* simulation ? */ 
         Ldosimul || Lnotfix ? " -nofix" : "", /* fixer le cd apres ecriture ? 
*/
@@ -773,6 +784,7 @@
         Leject ? "-eject" : "", /* ejecter le cd apres l'operation */
         Lblank, /* effacer le cdrw avant ? */
         conf_get_string("cdrecordpara"),
+        conf_get_boolean("overburn") ? "-overburn" : "",
         Lfileslist);
 _DEB("execution [%s]\n", Lcommandline);
     Lstatus = g_shell_parse_argv(Lcommandline, &Lnbrarg, &Lcmd, Aerror);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]