break on successful download

This commit is contained in:
2025-05-06 22:11:58 +02:00
parent b0e02ac7d1
commit 9aa94e50dd

View File

@ -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) {