diff --git a/lib/c/labcomm.c b/lib/c/labcomm.c index cb48e47df9c4798768bdb0b8a42e40067ad0aa2c..ed4e61779d2d21eb2025fd7f16ca6430e26ec0de 100644 --- a/lib/c/labcomm.c +++ b/lib/c/labcomm.c @@ -246,7 +246,7 @@ void labcomm_set_local_index(struct labcomm_signature *signature) { if (signature->index != 0) { labcomm_error_fatal_global(LABCOMM_ERROR_SIGNATURE_ALREADY_SET, - "%s", signature->name); + "Signature already set: %s\n", signature->name); } signature->index = local_index; local_index++; @@ -256,7 +256,7 @@ int labcomm_get_local_index(struct labcomm_signature *signature) { if (signature->index == 0) { labcomm_error_fatal_global(LABCOMM_ERROR_SIGNATURE_NOT_SET, - "%s", signature->name); + "Signature not set: %s\n", signature->name); } return signature->index; } diff --git a/lib/c/labcomm_error.c b/lib/c/labcomm_error.c index 278c5f3549f4df229bba97cde7fa08bd89e12ea3..5bfea6ed319e2a8457fcbd57cb6e747e0e5af7e8 100644 --- a/lib/c/labcomm_error.c +++ b/lib/c/labcomm_error.c @@ -21,12 +21,19 @@ #include <stdlib.h> #include <stdio.h> +#include <stdarg.h> #include "labcomm_error.h" - + void labcomm_error_fatal_global(enum labcomm_error error, char *format, ...) { + va_list args; + fprintf(stderr, "Fatal error %d\n", error); + va_start(args, format); + vprintf(format, args); + va_end(args); + exit(1); }