[Debburn-changes] r695 - in cdrkit/trunk: . debian wodim
Eduard Bloch
blade at alioth.debian.org
Fri Jan 26 01:31:25 CET 2007
Author: blade
Date: 2007-01-26 01:31:24 +0100 (Fri, 26 Jan 2007)
New Revision: 695
Modified:
cdrkit/trunk/Changelog
cdrkit/trunk/debian/changelog
cdrkit/trunk/wodim/wodim.c
Log:
+ dealing with newline when searching for device (closes: #408456)
+ corrected picking up of the SCSI transfer size (closes: #407773)
Modified: cdrkit/trunk/Changelog
===================================================================
--- cdrkit/trunk/Changelog 2007-01-23 18:26:04 UTC (rev 694)
+++ cdrkit/trunk/Changelog 2007-01-26 00:31:24 UTC (rev 695)
@@ -2,6 +2,8 @@
* Fixed fishing for transfer size in sysfs, now ready for
/dev/class/scsi_generic contents
+ * Dealing with the last newline char when processing
+ /proc/sys/dev/cdrom/info contents
-- Eduard Bloch <blade at debian.org> Tue, 23 Jan 2007 19:13:44 +0100
Modified: cdrkit/trunk/debian/changelog
===================================================================
--- cdrkit/trunk/debian/changelog 2007-01-23 18:26:04 UTC (rev 694)
+++ cdrkit/trunk/debian/changelog 2007-01-26 00:31:24 UTC (rev 695)
@@ -1,5 +1,8 @@
-cdrkit (9:1.1.2-2) unstable; urgency=low
+cdrkit (9:1.1.3-1) unstable; urgency=low
+ * New upstream version with minor bugfixes
+ + dealing with newline when searching for device (closes: #408456)
+ + corrected picking up of the SCSI transfer size (closes: #407773)
* Relaxed version dependency of cmake (closes: #407163)
-- Eduard Bloch <blade at debian.org> Fri, 19 Jan 2007 08:54:05 +0100
Modified: cdrkit/trunk/wodim/wodim.c
===================================================================
--- cdrkit/trunk/wodim/wodim.c 2007-01-23 18:26:04 UTC (rev 694)
+++ cdrkit/trunk/wodim/wodim.c 2007-01-26 00:31:24 UTC (rev 695)
@@ -1682,7 +1682,7 @@
fprintf(stderr, "\t-xamix Subsequent tracks are CD-ROM XA mode 2 form 1/2 - 2332 bytes\n");
fprintf(stderr, "\t-cdi Subsequent tracks are CDI tracks\n");
fprintf(stderr, "\t-isosize Use iso9660 file system size for next data track\n");
- fprintf(stderr, "\t-preemp Audio tracks are mastered with 50/15 µs preemphasis\n");
+ fprintf(stderr, "\t-preemp Audio tracks are mastered with 50/15 microseconds preemphasis\n");
fprintf(stderr, "\t-nopreemp Audio tracks are mastered with no preemphasis (default)\n");
fprintf(stderr, "\t-copy Audio tracks have unlimited copy permission\n");
fprintf(stderr, "\t-nocopy Audio tracks may only be copied once for personal use (default)\n");
@@ -3742,7 +3742,7 @@
if ( (!*devp || 0 == strcmp(*devp, "-1")) && (*flagsp & (F_VERSION|F_SCANBUS)) == 0) {
#ifdef __linux__
struct stat statbuf;
- char *type="CD-R", *key="Can write CD-R:", *guessdev="/dev/cdrw", *res=NULL;
+ char *type="CD-R", *key="Can write CD-R:", *guessdev="/dev/cdrw", *result=NULL;
long long filesize=0;
FILE *fh;
@@ -3761,7 +3761,7 @@
fprintf(stderr, "Quickly guessing the name of a drive capable to write %s, please wait...\n", type);
if(0==stat(guessdev, &statbuf))
- res=guessdev;
+ result=guessdev;
else if(0!= (fh = fopen("/proc/sys/dev/cdrom/info", "r")) ) {
/* ok, going the hard way */
char *nameline=NULL;
@@ -3771,31 +3771,29 @@
buf[255]='\0';
while(fgets(buf, sizeof(buf), fh)) {
- if(0==strncmp(buf, "drive name:", 11)) {
- char *t;
+ if(0==strncmp(buf, "drive name:", 11))
nameline=strdup(buf);
- }
if(nameline && 0==strncmp(buf, key, kn)) {
int p=kn;
- char *t=nameline+11; /* start at the known whitespace */
+ char *descptr=nameline+11; /* start at the known whitespace */
while(p<sizeof(buf) && buf[p]) {
if(buf[p]=='1' || buf[p]=='0') {
- /* move to a non-whitespace char */
- for(;*t=='\t' || *t==' ';t++)
+ /* find the beginning of the descriptor */
+ for(;isspace((Uchar) *descptr);descptr++)
;
}
if(buf[p]=='1') {
- res=t-5;
- /* terminate on whitespace and stop there */
- for(;*t;t++) {
- if(*t=='\t' || *t==' ')
- *(t--)='\0';
+ result=descptr-5;
+ /* terminate on space/newline and stop there */
+ for(;*descptr;descptr++) {
+ if(isspace((Uchar) *descptr))
+ *(descptr--)='\0';
}
- strncpy(res, "/dev/", 5);
+ strncpy(result, "/dev/", 5);
break;
}
- else { /* no hit, move to next whitespace */
- for(;*t && *t!='\t' && *t!=' ';t++)
+ else { /* no hit, move to after word ending */
+ for(; *descptr && ! isspace((Uchar) *descptr); descptr++)
;
}
p++;
@@ -3806,9 +3804,9 @@
fclose(fh);
}
- if(res) {
- fprintf(stderr, "Found %s, assuming dev=%s\n", res, res);
- *devp=res;
+ if(result) {
+ fprintf(stderr, "Found %s, assuming dev=%s\n", result, result);
+ *devp=result;
}
else {
fprintf(stderr, "Unable to guess the target drive. Please specify manually using\n"
More information about the Debburn-changes
mailing list