src/nnn.c | 9 ++++++--- diff --git a/src/nnn.c b/src/nnn.c index 62c78c0c9747d2bf312255d0bf66198be9b5f1ee..c3997911f7735bb23f00e2ce97a142e9bb22aa11 100644 --- a/src/nnn.c +++ b/src/nnn.c @@ -2074,12 +2074,15 @@ static bool parsebmstr(void) { int i = 0; - bmstr = strdup(getenv(env_cfg[NNN_BMS])); - char *bms = bmstr; - char *nextkey = bms; + char *nextkey; + char *bms = getenv(env_cfg[NNN_BMS]); if (!bms || !*bms) return TRUE; + + bmstr = strdup(bms); + bms = bmstr; + nextkey = bms; while (*bms && i < BM_MAX) { if (bms == nextkey) {