/[graveman]/graveman/current/src/cdrdao.c
ViewVC logotype

Diff of /graveman/current/src/cdrdao.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.13 by scresto, Mon Apr 4 01:37:42 2005 UTC revision 1.14 by scresto, Wed May 4 01:31:06 2005 UTC
# Line 52  Line 52 
52  #define CDRDAO_OF "of "  #define CDRDAO_OF "of "
53  #define CDRDAO_BUFFERS "Buffers "  #define CDRDAO_BUFFERS "Buffers "
54  #define CDRDAO_INCOMPATIBLE_MEDIUM "Medium in recorder device is not empty and not appendable"  #define CDRDAO_INCOMPATIBLE_MEDIUM "Medium in recorder device is not empty and not appendable"
55    #define CDRDAO_SESSIONS "Sessions "
56    
57  /* detection des media */  /* detection des media */
58  #define CDRDAO_CDRW "CD-RW"  #define CDRDAO_CDRW "CD-RW"
# Line 63  Line 64 
64  #define CDRDAO_APPENDABLE "Appendable"  #define CDRDAO_APPENDABLE "Appendable"
65  #define CDRDAO_NA ": n/a"  #define CDRDAO_NA ": n/a"
66  #define CDRDAO_CD "CD"  #define CDRDAO_CD "CD"
67    #define SESSION_ZERO ": 0"
 /*  
 static gchar *get_blank_type(Tgrave *Ag, gint Atypemedia)  
 {  
   gboolean *Luseautoblank = (gboolean *) sc_grave_get_data(Ag, "useautoblank");  
   
   if (!*Luseautoblank || (!(Atypemedia & _MEDIA_CDRW))) return g_strdup("");  
   
   return g_strdup_printf("blank=%s", conf_get_boolean("fastblank") == TRUE ? "fast" : "all");  
 }*/  
68    
69  /* callback appele lorsque cdrdao grave les pistes */  /* callback appele lorsque cdrdao grave les pistes */
70  gboolean cdrdao_grave_callback(GIOChannel *Astd, GIOCondition Acond, gpointer Adata)  gboolean cdrdao_grave_callback(GIOChannel *Astd, GIOCondition Acond, gpointer Adata)
# Line 357  gboolean copycd(Tgrave *Ag, GError **Aer Line 349  gboolean copycd(Tgrave *Ag, GError **Aer
349        }        }
350      }      }
351    
 /*    Lbuftitle = get_title(Lnbrgravure, Lcurcd, Ldosimul);  
     gtk_label_set_text(GTK_LABEL(Ltitle), Lbuftitle);  
     g_free(Lbuftitle);*/  
   
352      /* faut il ejecter le CD-R apres l'operation ?      /* faut il ejecter le CD-R apres l'operation ?
353       * oui si l'utilisateur a cocher la case "ejecter le cd" ou       * oui si l'utilisateur a cocher la case "ejecter le cd" ou
354       * si il faut realiser d'autre gravure sur d'autres CD-R */       * si il faut realiser d'autre gravure sur d'autres CD-R */
# Line 490  gint get_cdinfo(Tgrave *Ag, Tdriveinfo * Line 478  gint get_cdinfo(Tgrave *Ag, Tdriveinfo *
478    gint *Lpid = (gint *)sc_grave_get_data(Ag, "pid");    gint *Lpid = (gint *)sc_grave_get_data(Ag, "pid");
479    GString *Loutput;    GString *Loutput;
480    gchar *Lcdprg = conf_get_string("cdrdao");    gchar *Lcdprg = conf_get_string("cdrdao");
481      gboolean Lskipnocd = FALSE;
482    
483    if (!Lcdprg || !*Lcdprg) return 0;    if (!Lcdprg || !*Lcdprg) return 0;
484    
485    g_snprintf(Lcommandline, sizeof(Lcommandline)-1, "%s disk-info --device %s", Lcdprg, DRIVE_DEV(Adevice));    g_snprintf(Lcommandline, sizeof(Lcommandline)-1, "%s disk-info --device %s", Lcdprg, DRIVE_DEV(Adevice));
486  _DEB("execution de [%s]\n", Lcommandline);  _DEB("execution de [%s]", Lcommandline);
487    if (!g_shell_parse_argv(Lcommandline, &Lnbrarg, &Lcmd, Aerror)) return 0;    if (!g_shell_parse_argv(Lcommandline, &Lnbrarg, &Lcmd, Aerror)) return 0;
488    
489    
# Line 538  _DEB("execution de [%s]\n", Lcommandline Line 527  _DEB("execution de [%s]\n", Lcommandline
527    for (i=0; Larrbuf[i]; i++) {    for (i=0; Larrbuf[i]; i++) {
528      if (!*Larrbuf[i]) continue;      if (!*Larrbuf[i]) continue;
529      if (!strncmp(Larrbuf[i], CDRDAO_CDRW, strlen(CDRDAO_CDRW))) {      if (!strncmp(Larrbuf[i], CDRDAO_CDRW, strlen(CDRDAO_CDRW))) {
530    _DEB("cdrdao1 => '%s'", Larrbuf[i]);
531        if (strstr(Larrbuf[i], CDRDAO_YES)) {        if (strstr(Larrbuf[i], CDRDAO_YES)) {
532          Llu += _MEDIA_CDRW;          Llu += _MEDIA_CDRW;
533        }        }
534      } else if (!strncmp(Larrbuf[i], CDRDAO_TOCTYPE, strlen(CDRDAO_TOCTYPE))) {      } else if (!strncmp(Larrbuf[i], CDRDAO_TOCTYPE, strlen(CDRDAO_TOCTYPE))) {
535    _DEB("cdrdao2 => '%s'", Larrbuf[i]);
536        if (strstr(Larrbuf[i], CDRDAO_CD)) {        if (strstr(Larrbuf[i], CDRDAO_CD)) {
537          Llu += _MEDIA_CD;          Llu += _MEDIA_CD;
538        }        }
539      } else if (!strncmp(Larrbuf[i], CDRDAO_CDR, strlen(CDRDAO_CDR))) {      } else if (!strncmp(Larrbuf[i], CDRDAO_CDR, strlen(CDRDAO_CDR))) {
540    _DEB("cdrdao3 => '%s'", Larrbuf[i]);
541        if (!strstr(Larrbuf[i], CDRDAO_NA)) {        if (!strstr(Larrbuf[i], CDRDAO_NA)) {
542          Llu += _MEDIA_CDR;          Llu += _MEDIA_CDR;
543          } else {
544            Lskipnocd = TRUE;
545        }        }
546      } else if (!strncmp(Larrbuf[i], CDRDAO_EMPTY, strlen(CDRDAO_EMPTY))) {      } else if (!strncmp(Larrbuf[i], CDRDAO_EMPTY, strlen(CDRDAO_EMPTY))) {
547    _DEB("cdrdao4 => '%s'", Larrbuf[i]);
548        if (strstr(Larrbuf[i], CDRDAO_YES)) {        if (strstr(Larrbuf[i], CDRDAO_YES)) {
549          Llu += _MEDIA_BLANK;          Llu += _MEDIA_BLANK;
550        } else {        } else {
551          Llu += _MEDIA_NOBLANK;          Llu += _MEDIA_NOBLANK;
552        }        }
553      } else if (!strncmp(Larrbuf[i], CDRDAO_APPENDABLE, strlen(CDRDAO_APPENDABLE))) {      } else if (!strncmp(Larrbuf[i], CDRDAO_APPENDABLE, strlen(CDRDAO_APPENDABLE))) {
554    _DEB("cdrdao5 => '%s'", Larrbuf[i]);
555        if (!strstr(Larrbuf[i], CDRDAO_NO)) {        if (!strstr(Larrbuf[i], CDRDAO_NO)) {
556          Llu += _MEDIA_APPENDABLE;          Llu += _MEDIA_APPENDABLE;
557        }        }
558        } else if (!strncmp(Larrbuf[i], CDRDAO_SESSIONS, strlen(CDRDAO_SESSIONS))) {
559    _DEB("cdrdao6 => '%s'", Larrbuf[i]);
560          if (!strstr(Larrbuf[i], SESSION_ZERO)) {
561            Lskipnocd = FALSE;
562          }
563      }      }
564    }    }
565        
566    g_strfreev(Larrbuf);    g_strfreev(Larrbuf);
567    
568    return Llu;    return Lskipnocd ? _MEDIA_NONE : Llu;
569  }  }
570    
571    

Legend:
Removed from v.1.13  
changed lines
  Added in v.1.14

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26