break on successful download
This commit is contained in:
22
src/main.c
22
src/main.c
@ -151,7 +151,8 @@ int h_download(char *line, Config config) {
|
||||
args[5] = url;
|
||||
}
|
||||
args[6] = NULL;
|
||||
|
||||
|
||||
printf("Starting download using %s\n", args[0]);
|
||||
size_t i;
|
||||
for (i = 5; i > 0; i--) {
|
||||
/* Keep for later debugging or logging
|
||||
@ -172,10 +173,12 @@ int h_download(char *line, Config config) {
|
||||
execvp(args[0], args);
|
||||
}
|
||||
|
||||
if (ret != 0) {
|
||||
fprintf(stderr, "Command exited with non-zero code. code = %d\n", ret);
|
||||
if (ret == 0) {
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
fprintf(stderr, "Command exited with non-zero code. code = %d\n", ret);
|
||||
|
||||
/* TODO: move contents of h_has_internet here */
|
||||
ret = h_has_internet();
|
||||
if (ret != 0) {
|
||||
@ -237,12 +240,15 @@ int main(int argc, char **argv) {
|
||||
fprintf(stderr, "Incorrect amount of arguments\n");
|
||||
return 1;
|
||||
}
|
||||
printf("Successfully added to DB\n");
|
||||
ret = h_download(db_row, config);
|
||||
free(db_row);
|
||||
if (ret != 0) {
|
||||
printf("Failed download\n");
|
||||
h_db_close();
|
||||
return 1;
|
||||
}
|
||||
printf("Succesfully downladed\n");
|
||||
} else if (strcmp(argv[1], "download_website") == 0) {
|
||||
if (argc != 3) {
|
||||
fprintf(stderr, "Incorrect amount of arguments\n");
|
||||
@ -253,7 +259,7 @@ int main(int argc, char **argv) {
|
||||
sprintf(file_name, "%s/%s_generated.txt", config.tmp_dir, argv[2]);
|
||||
FILE *fptr = fopen(file_name, "w+");
|
||||
if (fptr == NULL) {
|
||||
fprintf(stderr, "Couldn't open file\n");
|
||||
fprintf(stderr, "Couldn't open file '%s'\n", file_name);
|
||||
h_db_close();
|
||||
return 1;
|
||||
}
|
||||
@ -266,7 +272,13 @@ int main(int argc, char **argv) {
|
||||
}
|
||||
|
||||
fptr = fopen(file_name, "r");
|
||||
if (fptr == NULL) {
|
||||
fprintf(stderr, "Couldn't open file '%s'\n", file_name);
|
||||
h_db_close();
|
||||
return 1;
|
||||
}
|
||||
char *line = malloc(10000);
|
||||
printf("Ready to download\n");
|
||||
while(fgets(line, 10000, fptr) != NULL) {
|
||||
ret = h_download(line, config);
|
||||
if (ret != 0) {
|
||||
|
Reference in New Issue
Block a user