diff options
Diffstat (limited to 'media-sound/cdparanoia/files/cdparanoia-3.10_pre0-log-summary.patch')
-rw-r--r-- | media-sound/cdparanoia/files/cdparanoia-3.10_pre0-log-summary.patch | 132 |
1 files changed, 132 insertions, 0 deletions
diff --git a/media-sound/cdparanoia/files/cdparanoia-3.10_pre0-log-summary.patch b/media-sound/cdparanoia/files/cdparanoia-3.10_pre0-log-summary.patch new file mode 100644 index 000000000000..8c4b165cdb3c --- /dev/null +++ b/media-sound/cdparanoia/files/cdparanoia-3.10_pre0-log-summary.patch @@ -0,0 +1,132 @@ +--- main.c 2006-08-30 00:23:55.000000000 +0200 ++++ ../main.c 2006-11-15 03:26:17.000000000 +0100 +@@ -211,6 +218,7 @@ + " -q --quiet : quiet operation\n" + " -e --stderr-progress : force output of progress information to\n" + " stderr (for wrapper scripts)\n" ++" -l --log-summary <file> : save result summary to file\n" + " -V --version : print version info and quit\n" + " -Q --query : autosense drive, query disc and quit\n" + " -B --batch : 'batch' mode (saves each track to a\n" +@@ -342,6 +350,7 @@ + + static int skipped_flag=0; + static int abort_on_skip=0; ++FILE *logfile = NULL; + static void callback(long inpos, int function){ + /* + +@@ -552,16 +561,22 @@ + } + + fprintf(stderr,buffer); ++ ++ if (logfile != NULL && function==-1) { ++ fprintf(logfile,buffer+1); ++ fprintf(logfile,"\n\n"); ++ fflush(logfile); ++ } + } + } + } +- ++ + /* clear the indicator for next batch */ + if(function==-1) + memset(dispcache,' ',graph); + } + +-const char *optstring = "escCn:o:O:d:g:S:prRwafvqVQhZz::YXWBi:Tt:"; ++const char *optstring = "escCn:o:O:d:g:S:prRwafvqVQhZz::YXWBi:Tt:l:"; + + struct option options [] = { + {"stderr-progress",no_argument,NULL,'e'}, +@@ -594,6 +609,7 @@ + {"disable-fragmentation",no_argument,NULL,'F'}, + {"output-info",required_argument,NULL,'i'}, + {"never-skip",optional_argument,NULL,'z'}, ++ {"log-summary",required_argument,NULL,'l'}, + + {NULL,0,NULL,0} + }; +@@ -763,6 +779,20 @@ + case 't': + toc_offset=atoi(optarg); + break; ++ case 'l': ++ if(logfile && logfile != stdout)fclose(logfile); ++ if(!strcmp(optarg,"-")) ++ logfile=stdout; ++ else{ ++ logfile=fopen(optarg,"w"); ++ if(logfile==NULL){ ++ report3("Cannot open log summary file %s: %s",(char*)optarg, ++ strerror(errno)); ++ exit(1); ++ } ++ } ++ ++ break; + case 'O': + sample_offset=atoi(optarg); + break; +@@ -772,6 +802,18 @@ + } + } + ++ if(logfile){ ++ /* log command line and version */ ++ int i; ++ for (i = 0; i < argc; i++) ++ fprintf(logfile,"%s ",argv[i]); ++ fprintf(logfile,"\n",argv[i]); ++ ++ fprintf(logfile,VERSION); ++ fprintf(logfile,"\n"); ++ fflush(logfile); ++ } ++ + if(optind>=argc && !query_only){ + if(batch) + span=NULL; +@@ -1052,6 +1094,10 @@ + if(batch)report("Are you sure you wanted 'batch' " + "(-B) output with stdout?"); + report("outputting to stdout\n"); ++ if(logfile){ ++ fprintf(logfile,"outputting to stdout\n"); ++ fflush(logfile); ++ } + outfile_name[0]='\0'; + }else{ + char path[256]; +@@ -1096,6 +1142,10 @@ + exit(1); + } + report2("outputting to %s\n",outfile_name); ++ if(logfile){ ++ fprintf(logfile,"outputting to %s\n",outfile_name); ++ fflush(logfile); ++ } + } + }else{ + /* default */ +@@ -1128,6 +1178,10 @@ + exit(1); + } + report2("outputting to %s\n",outfile_name); ++ if(logfile){ ++ fprintf(logfile,"outputting to %s\n",outfile_name); ++ fflush(logfile); ++ } + } + + switch(output_type){ +@@ -1270,5 +1324,7 @@ + + cdda_close(d); + d=NULL; ++ if(logfile && logfile != stdout) ++ fclose(logfile); + return 0; + } |