X-Git-Url: https://git.xonotic.org/?a=blobdiff_plain;f=test.c;h=23fbfb6b4ef8ed0d5f8c9e37446ddd9b1c9b775e;hb=53e9ed0d9638b911d377df28505f09c0bee62a35;hp=6ce99964b24f408b5fd482a2ddff7eb83d4d7ce9;hpb=1d745fd1f9b0448a00140cef0b68d9a3aa73f1f1;p=xonotic%2Fgmqcc.git diff --git a/test.c b/test.c index 6ce9996..23fbfb6 100644 --- a/test.c +++ b/test.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2012, 2013 + * Copyright (C) 2012, 2013, 2014 * Dale Weiler * * Permission is hereby granted, free of charge, to any person obtaining a copy of @@ -85,7 +85,7 @@ static fs_file_t **task_popen(const char *command, const char *mode) { while (*line != '\0' && *line != ' ' && *line != '\t' && *line != '\n') line++; } - vec_push(argv, '\0'); + vec_push(argv, NULL); } @@ -1100,6 +1100,7 @@ static size_t task_schedualize(size_t *pad) { size_t i = 0; size_t j = 0; size_t failed = 0; + int status = 0; util_snprintf(space[0], sizeof(space[0]), "%d", (int)vec_size(task_tasks)); @@ -1167,7 +1168,9 @@ static size_t task_schedualize(size_t *pad) { continue; } - if (task_pclose(task_tasks[i].runhandles) != EXIT_SUCCESS && strcmp(task_tasks[i].tmpl->proceduretype, "-fail")) { + status = task_pclose(task_tasks[i].runhandles); + if ((!strcmp(task_tasks[i].tmpl->proceduretype, "-fail") && status == EXIT_SUCCESS) + || ( strcmp(task_tasks[i].tmpl->proceduretype, "-fail") && status == EXIT_FAILURE)) { con_out("failure: `%s` %*s %*s\n", task_tasks[i].tmpl->description, (pad[0] + pad[1] - strlen(task_tasks[i].tmpl->description)) + (strlen(task_tasks[i].tmpl->rulesfile) - pad[1]),