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.
This commit is contained in:
0xACE 2021-08-17 04:51:02 +00:00 committed by Arun Prakash Jana
parent 86648ab391
commit 9d4330e382
No known key found for this signature in database
GPG key ID: A75979F35C080412

View file

@ -7972,12 +7972,12 @@ static bool setup_config(void)
return FALSE; return FALSE;
} }
len = xstrlen(xdgcfg) + 1 + 14; /* add length of "/nnn/bookmarks" */ len = xstrlen(xdgcfg) + xstrlen("/nnn/bookmarks") + 1;
xdg = TRUE; xdg = TRUE;
} }
if (!xdg) 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); cfgpath = (char *)malloc(len);
plgpath = (char *)malloc(len); plgpath = (char *)malloc(len);
@ -7988,7 +7988,7 @@ static bool setup_config(void)
if (xdg) { if (xdg) {
xstrsncpy(cfgpath, xdgcfg, len); xstrsncpy(cfgpath, xdgcfg, len);
r = len - 13; /* subtract length of "/nnn/sessions" */ r = len - xstrlen("/nnn/bookmarks");
} else { } else {
r = xstrsncpy(cfgpath, home, len); r = xstrsncpy(cfgpath, home, len);