From 3199ac739a0ecc0705d5b83d59d8b99f40000215 Mon Sep 17 00:00:00 2001 From: Dr-Noob Date: Fri, 22 Jun 2018 20:36:56 +0200 Subject: [PATCH] Function to notify errors --- Makefile | 4 ++-- global.c | 16 ++++++++++++++++ global.h | 6 ++++++ main.c | 1 + printer.c | 9 ++++----- 5 files changed, 29 insertions(+), 7 deletions(-) create mode 100644 global.c create mode 100644 global.h diff --git a/Makefile b/Makefile index b529f8e..c46e797 100644 --- a/Makefile +++ b/Makefile @@ -2,8 +2,8 @@ CXX=gcc CXXFLAGS=-g -Wall -Werror -fstack-protector-all -pedantic -Wno-unused -SOURCE=main.c standart.c extended.c cpuid.c udev.c printer.c args.c -HEADERS=standart.h extended.h cpuid.h udev.h printer.h ascii.h args.h +SOURCE=main.c standart.c extended.c cpuid.c udev.c printer.c args.c global.c +HEADERS=standart.h extended.h cpuid.h udev.h printer.h ascii.h args.h global.h OUTPUT=cpufetch diff --git a/global.c b/global.c new file mode 100644 index 0000000..165e2d6 --- /dev/null +++ b/global.c @@ -0,0 +1,16 @@ +#include +#include +#include "global.h" + +#define RED "\x1b[31;1m" +#define RESET "\x1b[0m" + +void printError(const char *fmt, ...) { + int buffer_size = 4096; + char buffer[buffer_size]; + va_list args; + va_start(args, fmt); + vsnprintf(buffer,buffer_size, fmt, args); + va_end(args); + fprintf(stderr,RED "ERROR: "RESET "%s\n",buffer); +} diff --git a/global.h b/global.h new file mode 100644 index 0000000..429d065 --- /dev/null +++ b/global.h @@ -0,0 +1,6 @@ +#ifndef __GLOBAL__ +#define __GLOBAL__ + +void printError(const char *fmt, ...); + +#endif diff --git a/main.c b/main.c index e42aafa..9a0d2f9 100644 --- a/main.c +++ b/main.c @@ -5,6 +5,7 @@ #include "standart.h" #include "udev.h" #include "extended.h" +#include "global.h" /*** SAMPLE OUTPUT diff --git a/printer.c b/printer.c index 2d7e87b..ef00a96 100644 --- a/printer.c +++ b/printer.c @@ -4,6 +4,7 @@ #include "printer.h" #include "ascii.h" +#include "global.h" #define COL_INTEL_DEFAULT_1 "\x1b[36;1m" #define COL_INTEL_DEFAULT_2 "\x1b[37;1m" @@ -66,7 +67,7 @@ struct ascii* set_ascii(VENDOR cpuVendor, STYLE style) { /*** Check that number of lines of ascii art matches the number of spaces plus the number of lines filled with text ***/ if(LINES_SPACE_UP+LINES_SPACE_DOWN+ATTRIBUTE_COUNT != NUMBER_OF_LINES) { - printf("Bug at line number %d in file %s\n", __LINE__, __FILE__); + printError("Number of lines do not match (%d vs %d)",LINES_SPACE_UP+LINES_SPACE_DOWN+ATTRIBUTE_COUNT,NUMBER_OF_LINES); return NULL; } @@ -85,8 +86,7 @@ struct ascii* set_ascii(VENDOR cpuVendor, STYLE style) { strcpy(art->color2,COL_INTEL_DARK_2); break; default: - //TODO Bugs function - printf("Bug at line number %d in file %s\n", __LINE__, __FILE__); + printError("Found invalid style (%d)",style); return NULL; } @@ -125,8 +125,7 @@ struct ascii* set_ascii(VENDOR cpuVendor, STYLE style) { strcpy(art->color2,COL_AMD_DARK_2); break; default: - //TODO Bugs function - printf("Bug at line number %d in file %s\n", __LINE__, __FILE__); + printError("Found invalid style (%d)",style); return NULL; }