fix strlen. fix optarg

This commit is contained in:
Troy D. Hanson
2014-05-14 10:12:25 -04:00
parent ca161b2975
commit 0c44f13503
4 changed files with 7 additions and 6 deletions

View File

@@ -267,15 +267,16 @@ static int lock_output_spool(const char *dir, kv_spoolw_t *sp) {
}
/* open a new file with an incremented sequence number. e.g., if the
* original is /tmp/myspool/spool.123456789.999-000.sp
* new one is /tmp/myspool/spool.123456789.999-001.sp
* original is /tmp/myspool/spool.123456789.999-9.sp
* new one is /tmp/myspool/spool.123456789.999-10.sp
*/
static int kv_spoolwriter_reopen(kv_spoolw_t *sp) {
assert(sp->path);
int fd, rc = -1, seq;
char *path, *hyph, *seqp;
path = strdup(sp->path);
path = malloc(strlen(sp->path)+10); if (!path) goto done;
strcpy(path,sp->path);
hyph = strrchr(path,'-'); if (!hyph) goto done;
seqp = hyph + 1;
if (sscanf(seqp, "%u", &seq) != 1) goto done;

View File

@@ -111,7 +111,7 @@ int main(int argc, char *argv[]) {
switch (opt) {
case 'v': verbose++; break;
case 's': push_mode++; break;
case 'd': spool=optarg; break;
case 'd': spool=strdup(optarg); break;
case 'b': config_file=strdup(optarg); break;
default: usage(argv[0]); break;
}

View File

@@ -48,7 +48,7 @@ int main(int argc, char *argv[]) {
switch (opt) {
case 'v': verbose++; break;
case 's': push_mode++; break;
case 'd': spool=optarg; break;
case 'd': spool=strdup(optarg); break;
default: usage(argv[0]); break;
}
}

View File

@@ -165,7 +165,7 @@ int main(int argc, char *argv[]) {
while ( (opt = getopt(argc, argv, "v+d:b:p:")) != -1) {
switch (opt) {
case 'v': verbose++; break;
case 'd': spool=optarg; break;
case 'd': spool=strdup(optarg); break;
case 'b': config_file=strdup(optarg); break;
case 'p': port=atoi(optarg); break;
default: usage(argv[0]); break;