From 8720a172861f5004318725edebc7a54c3efc560d Mon Sep 17 00:00:00 2001 From: Tomas Rivera Date: Mon, 27 Apr 2026 18:33:08 +0200 Subject: [PATCH] CI: fix immediate crash --- .github/workflows/test.yml | 4 ++-- src/utils.c | 16 +++++++++++++--- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index ca318e3..be8977a 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -22,8 +22,8 @@ jobs: pkg-config \ libcjson-dev \ libncurses-dev \ - git - + git \ + neovim - name: Build run: make diff --git a/src/utils.c b/src/utils.c index 28c7316..c473bb1 100644 --- a/src/utils.c +++ b/src/utils.c @@ -1,4 +1,6 @@ #include "utils.h" +#include "unistd.h" +#include const char *supportedEditor[] = {"helix", "jed", "kakoune", "micro", "nano", "neovim", "vi", "vim"}; const int numEditors = 8; @@ -112,17 +114,25 @@ static void ensureDir(const char *path, const int shouldDebug) { } void initAppFilesAndDirs(const char *home, const int shouldDebug) { + // sometimes .cache and .config doesn't exist. Such as with github actions machines char config_dir[PATH_MAX]; char cache_dir[PATH_MAX]; - + snprintf(config_dir, sizeof(config_dir), - "%s/.config/notewrapper", home); + "%s/.config/", home); snprintf(cache_dir, sizeof(cache_dir), - "%s/.cache/notewrapper", home); + "%s/.cache/", home); ensureDir(config_dir, shouldDebug); ensureDir(cache_dir, shouldDebug); + + strncat(config_dir, "notewrapper/", PATH_MAX); + strncat(cache_dir, "notewrapper/", PATH_MAX); + + ensureDir(config_dir, shouldDebug); + ensureDir(cache_dir, shouldDebug); + char config_file[PATH_MAX+12]; snprintf(config_file, sizeof(config_file), "%s/config.json", config_dir);