55 |
#define CDRECORD_WRITE_DUMMY "Does support test writing" |
#define CDRECORD_WRITE_DUMMY "Does support test writing" |
56 |
#define CDRECORD_MAX_CDREAD_SPEED "Maximum read speed:" |
#define CDRECORD_MAX_CDREAD_SPEED "Maximum read speed:" |
57 |
#define CDRECORD_MAX_CDREAD_SPEED_CD "(CD" |
#define CDRECORD_MAX_CDREAD_SPEED_CD "(CD" |
58 |
|
#define CDRECORD_MAX_CDREAD_SPEED_DVD " DVD " |
59 |
|
|
60 |
/* effacer un cdrw ou cloturer un cdr */ |
/* effacer un cdrw ou cloturer un cdr */ |
61 |
#define CDRECORD_BLANKING_TIME "Blanking time:" |
#define CDRECORD_BLANKING_TIME "Blanking time:" |
87 |
if (!Adosimul) { |
if (!Adosimul) { |
88 |
Ltxt = g_strdup(_("Writing in progress...")); |
Ltxt = g_strdup(_("Writing in progress...")); |
89 |
} else { |
} else { |
90 |
Ltxt = g_strdup(_("AABB Simulated CD writing in progress...")); |
Ltxt = g_strdup(_("Simulated CD writing in progress...")); |
91 |
} |
} |
92 |
} else { |
} else { |
93 |
if (!Adosimul) { |
if (!Adosimul) { |
238 |
gboolean maj_drive_info(Tdriveinfo *Adrive, gchar *Adev, GError **Aerror) |
gboolean maj_drive_info(Tdriveinfo *Adrive, gchar *Adev, GError **Aerror) |
239 |
{ |
{ |
240 |
gchar *Lcommandline, *Lout = NULL, *Lerr = NULL; |
gchar *Lcommandline, *Lout = NULL, *Lerr = NULL; |
241 |
gchar *s = NULL, *f; |
gchar *scd = NULL, *sdvd = NULL, *f; |
242 |
gint Lexit = 0; |
gint Lexit = 0; |
243 |
gboolean Lstatus; |
gboolean Lstatus; |
244 |
gint Ltype = 0; |
gint Ltype = 0; |
260 |
if (strstr(Lout, CDRECORD_READ_DVD)) Ltype += _READ_DVD; |
if (strstr(Lout, CDRECORD_READ_DVD)) Ltype += _READ_DVD; |
261 |
if (strstr(Lout, CDRECORD_WRITE_DVD)) Ltype += _WRITE_DVD; |
if (strstr(Lout, CDRECORD_WRITE_DVD)) Ltype += _WRITE_DVD; |
262 |
|
|
263 |
/* vitesse de lecture maximum */ |
/* vitesse de lecture maximum CD */ |
264 |
if ((s=strstr(Lout, CDRECORD_MAX_CDREAD_SPEED))) { |
if ((scd=strstr(Lout, CDRECORD_MAX_CDREAD_SPEED))) { |
265 |
s+=strlen(CDRECORD_MAX_CDREAD_SPEED); |
scd+=strlen(CDRECORD_MAX_CDREAD_SPEED); |
266 |
if ((s=strstr(s, CDRECORD_MAX_CDREAD_SPEED_CD))) { |
if ((scd=strstr(scd, CDRECORD_MAX_CDREAD_SPEED_CD))) { |
267 |
s=ltrim(s+strlen(CDRECORD_MAX_CDREAD_SPEED_CD)); |
scd=ltrim(scd+strlen(CDRECORD_MAX_CDREAD_SPEED_CD)); |
268 |
} |
} |
269 |
f=s; |
f=scd; |
270 |
while (isdigit(*f)) f++; |
while (isdigit(*f)) f++; |
271 |
*f=0; |
*(f++)=0; |
272 |
|
|
273 |
|
if ((sdvd=strstr(f, CDRECORD_MAX_CDREAD_SPEED_DVD))) { |
274 |
|
sdvd=ltrim(sdvd+strlen(CDRECORD_MAX_CDREAD_SPEED_DVD)); |
275 |
|
} |
276 |
|
f=sdvd; |
277 |
|
while (isdigit(*f)) f++; |
278 |
|
*(f++)=0; |
279 |
} |
} |
280 |
|
|
281 |
g_free(Lout); |
g_free(Lout); |
282 |
g_free(Lerr); |
g_free(Lerr); |
283 |
|
|
284 |
if (!s) return FALSE; |
if (!scd) return FALSE; |
285 |
|
|
286 |
Adrive->type = Ltype; /* type: lecteur ou graveur */ |
Adrive->type = Ltype; /* type: lecteur ou graveur */ |
287 |
Adrive->vitesse = atoi(s); /* vitesse de lecture ou de gravure maximum */ |
Adrive->vitesse = atoi(scd); /* vitesse de lecture ou de gravure maximum */ |
288 |
|
Adrive->vitessedvd = sdvd ? atoi(sdvd) : -1; |
289 |
_DEB("== le type => %d\n", Ltype); |
_DEB("== le type => %d\n", Ltype); |
290 |
_DEB("== donc la vitesse de lecture => %d\n", Adrive->vitesse ); |
_DEB("== donc la vitesse de lecture => %d\n", Adrive->vitesse ); |
291 |
return TRUE; |
return TRUE; |
372 |
/* si c'est non alors on arrete */ |
/* si c'est non alors on arrete */ |
373 |
*Labort = TRUE; |
*Labort = TRUE; |
374 |
Lstatus = TRUE; |
Lstatus = TRUE; |
375 |
|
break; |
376 |
} |
} |
377 |
|
|
378 |
} |
} |
391 |
|
|
392 |
Lbufvitesse = get_combo_value(Lvitesse); |
Lbufvitesse = get_combo_value(Lvitesse); |
393 |
Lbufgrav = get_combo_value(Lgraveur); |
Lbufgrav = get_combo_value(Lgraveur); |
394 |
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'", |
395 |
conf_get_string("cdrecord"), Lbufgrav, *Lbufvitesse != '0' ? "speed=" : "", |
conf_get_string("cdrecord"), Lbufgrav, *Lbufvitesse != '0' ? "speed=" : "", |
396 |
*Lbufvitesse != '0' ? Lbufvitesse : "", |
*Lbufvitesse != '0' ? Lbufvitesse : "", |
397 |
Ldosimul ? " -dummy" : "", /* simulation ? */ |
Ldosimul ? " -dummy" : "", /* simulation ? */ |
400 |
Leject ? "-eject" : "", /* ejecter le cd apres l'operation */ |
Leject ? "-eject" : "", /* ejecter le cd apres l'operation */ |
401 |
Lblank, |
Lblank, |
402 |
Lextrapara && *Lextrapara ? *Lextrapara : "", /* parametre supplementaire tel que le mode d'ecriture */ |
Lextrapara && *Lextrapara ? *Lextrapara : "", /* parametre supplementaire tel que le mode d'ecriture */ |
403 |
|
conf_get_boolean("overburn") ? "-overburn" : "", |
404 |
conf_get_string("cdrecordpara"), |
conf_get_string("cdrecordpara"), |
405 |
*Liso); |
*Liso); |
406 |
_DEB("execution [%s]\n", Lcommandline); |
_DEB("execution [%s]\n", Lcommandline); |
776 |
* si il faut realiser d'autre gravure sur d'autres CD-R */ |
* si il faut realiser d'autre gravure sur d'autres CD-R */ |
777 |
Leject = ((Lcurcd > 1 && (Lwanteject || Lcurcd<Lnbrgravure)) || (Lcurcd == 1 && !Ldosimul && Lwanteject)); |
Leject = ((Lcurcd > 1 && (Lwanteject || Lcurcd<Lnbrgravure)) || (Lcurcd == 1 && !Ldosimul && Lwanteject)); |
778 |
|
|
779 |
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", |
780 |
conf_get_string("cdrecord"), Lbufgrav, *Lbufvitesse == '0' ? "" : "speed=", *Lbufvitesse == '0' ? "" : Lbufvitesse, |
conf_get_string("cdrecord"), Lbufgrav, *Lbufvitesse == '0' ? "" : "speed=", *Lbufvitesse == '0' ? "" : Lbufvitesse, |
781 |
Ldosimul ? " -dummy" : "", /* simulation ? */ |
Ldosimul ? " -dummy" : "", /* simulation ? */ |
782 |
Ldosimul || Lnotfix ? " -nofix" : "", /* fixer le cd apres ecriture ? */ |
Ldosimul || Lnotfix ? " -nofix" : "", /* fixer le cd apres ecriture ? */ |
784 |
Leject ? "-eject" : "", /* ejecter le cd apres l'operation */ |
Leject ? "-eject" : "", /* ejecter le cd apres l'operation */ |
785 |
Lblank, /* effacer le cdrw avant ? */ |
Lblank, /* effacer le cdrw avant ? */ |
786 |
conf_get_string("cdrecordpara"), |
conf_get_string("cdrecordpara"), |
787 |
|
conf_get_boolean("overburn") ? "-overburn" : "", |
788 |
Lfileslist); |
Lfileslist); |
789 |
_DEB("execution [%s]\n", Lcommandline); |
_DEB("execution [%s]\n", Lcommandline); |
790 |
Lstatus = g_shell_parse_argv(Lcommandline, &Lnbrarg, &Lcmd, Aerror); |
Lstatus = g_shell_parse_argv(Lcommandline, &Lnbrarg, &Lcmd, Aerror); |