From: 0xACE <0xACE@users.noreply.github.com> Date: Tue, 17 Aug 2021 04:51:02 +0000 (+0000) Subject: Decide string length at compile time (#1130) X-Git-Tag: v4.3~44 X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=9d4330e382e5b3542bd5f51690c8bb0bdbff1fd8;p=nnn.git Decide string length at compile time (#1130) I run into many premature optimizations in our codebase which are unnecessary. In this particular case `strlen()` is optimized at compile time even at `-O0` with `gcc`. I would value higher code quality than dealing with these things in our future endeavours. If this is accepted I may supply some more readability patches. --- diff --git a/src/nnn.c b/src/nnn.c index 4d0bc37e..b4caed02 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -7972,12 +7972,12 @@ static bool setup_config(void) return FALSE; } - len = xstrlen(xdgcfg) + 1 + 14; /* add length of "/nnn/bookmarks" */ + len = xstrlen(xdgcfg) + xstrlen("/nnn/bookmarks") + 1; xdg = TRUE; } if (!xdg) - len = xstrlen(home) + 1 + 22; /* add length of "/.config/nnn/bookmarks" */ + len = xstrlen(home) + xstrlen("/.config/nnn/bookmarks") + 1; cfgpath = (char *)malloc(len); plgpath = (char *)malloc(len); @@ -7988,7 +7988,7 @@ static bool setup_config(void) if (xdg) { xstrsncpy(cfgpath, xdgcfg, len); - r = len - 13; /* subtract length of "/nnn/sessions" */ + r = len - xstrlen("/nnn/bookmarks"); } else { r = xstrsncpy(cfgpath, home, len);