1.1 --- a/cdbackup.c Sat Dec 29 15:28:22 2007 +0100
1.2 +++ b/cdbackup.c Sat Dec 29 15:31:08 2007 +0100
1.3 @@ -1,5 +1,5 @@
1.4 /* cdbackup.c
1.5 -Copyright (c) 2000-2004 Craig Condit, Stefan Hülswitt.
1.6 +Copyright (c) 2000-2006 Craig Condit, Stefan Hülswitt.
1.7
1.8 Redistribution and use in source and binary forms, with or without
1.9 modification, are permitted provided that the following conditions are met:
1.10 @@ -84,7 +84,10 @@
1.11 char *ptr;
1.12 va_list ap;
1.13 va_start(ap,format);
1.14 - if(vasprintf(&ptr,format,ap)<0) serror("No memory for cdrecord args\n");
1.15 + if(vasprintf(&ptr,format,ap)<0) {
1.16 + serror("No memory for cdrecord args\n");
1.17 + ptr=0;
1.18 + }
1.19 va_end(ap);
1.20 return ptr;
1.21 }
1.22 @@ -94,7 +97,7 @@
1.23 char **args, **p, *exname;
1.24 int l;
1.25
1.26 - if(!(p=args=calloc(cdrec_opt_count+10,sizeof(char *))))
1.27 + if(!(p=args=calloc(cdrec_opt_count+32,sizeof(char *))))
1.28 serror("No memory for cdrecord args\n");
1.29
1.30 if(dvd) exname="dvdrecord"; else exname="cdrecord";
1.31 @@ -106,6 +109,7 @@
1.32 }
1.33 else {
1.34 *p++="-multi";
1.35 + *p++="-tao";
1.36 *p++=make_arg("padsize=%ds",padsize);
1.37 }
1.38
1.39 @@ -323,7 +327,7 @@
1.40 if(cont) fprintf(stderr,"Multi-disk not enabled, ignoring continuation image(s)!\n");
1.41 cont=0;
1.42 }
1.43 - else {
1.44 + else if(cont) {
1.45 disknum++;
1.46 diskchange(multicmd,cd_dev);
1.47 }