diff options
| -rw-r--r-- | include/utils.h | 6 | ||||
| -rw-r--r-- | src/utils.c | 11 | 
2 files changed, 14 insertions, 3 deletions
| diff --git a/include/utils.h b/include/utils.h index eb7604c..cdf4b4e 100644 --- a/include/utils.h +++ b/include/utils.h @@ -13,10 +13,12 @@  #define PATH_ENV_VAR "path"  #define DIR_SEP "\\"  #define PATH_SEP ";" +#define LINE_SEP "\r\n"  #else  #define PATH_ENV_VAR "PATH"  #define DIR_SEP "/"  #define PATH_SEP ":" +#define LINE_SEP "\n"  #endif  typedef int (ReaderFn)(size_t line, char **); @@ -32,12 +34,14 @@ int touch(const char *filename);  int git_clone(struct Process *proc, char *url, char *destdir, char *gitref);  char *git_describe(const char *path); +#define OMC_MSG_SUCCESS 0  #define OMC_MSG_NOP 1 << 0  #define OMC_MSG_ERROR 1 << 1  #define OMC_MSG_WARN 1 << 2  #define OMC_MSG_L1 1 << 3  #define OMC_MSG_L2 1 << 4  #define OMC_MSG_L3 1 << 5 -int msg(unsigned type, char *fmt, ...); +void msg(unsigned type, char *fmt, ...); +void debug_shell();  #endif //OHMYCAL_UTILS_H diff --git a/src/utils.c b/src/utils.c index c0bb28f..4e82a64 100644 --- a/src/utils.c +++ b/src/utils.c @@ -370,14 +370,14 @@ char *git_describe(const char *path) {  #define OMC_COLOR_WHITE "\e[1;97m"  #define OMC_COLOR_RESET "\e[0;37m\e[0m" -int msg(unsigned type, char *fmt, ...) { +void msg(unsigned type, char *fmt, ...) {      FILE *stream = NULL;      char header[255];      char status[255];      if (type & OMC_MSG_NOP) {          // quiet mode -        return 0; +        return;      }      memset(header, 0, sizeof(header)); @@ -415,3 +415,10 @@ int msg(unsigned type, char *fmt, ...) {      printf("%s", OMC_COLOR_RESET);      va_end(args);  } + +void debug_shell() { +    msg(OMC_MSG_L1 | OMC_MSG_WARN, "ENTERING OMC DEBUG SHELL\n" OMC_COLOR_RESET); +    system("/bin/bash -c 'PS1=\"(OMC DEBUG) \\W $ \" bash --norc --noprofile'"); +    msg(OMC_MSG_L1 | OMC_MSG_WARN, "EXITING OMC DEBUG SHELL\n" OMC_COLOR_RESET); +    exit(255); +} | 
