comparison src/evalvars.c @ 20103:fda7bed83eb6 v8.2.0607

patch 8.2.0607: gcc warns for using uninitialized variable Commit: https://github.com/vim/vim/commit/2bb76accc66d17f2c027c04396082c46f410bfea Author: Bram Moolenaar <Bram@vim.org> Date: Sun Apr 19 22:57:44 2020 +0200 patch 8.2.0607: gcc warns for using uninitialized variable Problem: Gcc warns for using uninitialized variable. (John Marriott) Solution: Set name_end also for environment variables.
author Bram Moolenaar <Bram@vim.org>
date Sun, 19 Apr 2020 23:00:03 +0200
parents 646c53fa5781
children f40231487a49
comparison
equal deleted inserted replaced
20102:c7b95b2427fb 20103:fda7bed83eb6
1426 return; 1426 return;
1427 } 1427 }
1428 if (!error && !eap->skip 1428 if (!error && !eap->skip
1429 && callback(&lv, arg, eap, deep, cookie) == FAIL) 1429 && callback(&lv, arg, eap, deep, cookie) == FAIL)
1430 error = TRUE; 1430 error = TRUE;
1431 arg = skipwhite(arg); 1431 name_end = arg;
1432 continue; 1432 }
1433 } 1433 else
1434 1434 {
1435 // Parse the name and find the end. 1435 // Parse the name and find the end.
1436 name_end = get_lval(arg, NULL, &lv, TRUE, eap->skip || error, 1436 name_end = get_lval(arg, NULL, &lv, TRUE, eap->skip || error,
1437 glv_flags, FNE_CHECK_START); 1437 glv_flags, FNE_CHECK_START);
1438 if (lv.ll_name == NULL) 1438 if (lv.ll_name == NULL)
1439 error = TRUE; // error but continue parsing 1439 error = TRUE; // error but continue parsing
1440 if (name_end == NULL || (!VIM_ISWHITE(*name_end) 1440 if (name_end == NULL || (!VIM_ISWHITE(*name_end)
1441 && !ends_excmd(*name_end))) 1441 && !ends_excmd(*name_end)))
1442 { 1442 {
1443 if (name_end != NULL) 1443 if (name_end != NULL)
1444 { 1444 {
1445 emsg_severe = TRUE; 1445 emsg_severe = TRUE;
1446 emsg(_(e_trailing)); 1446 emsg(_(e_trailing));
1447 } 1447 }
1448 if (!(eap->skip || error)) 1448 if (!(eap->skip || error))
1449 clear_lval(&lv);
1450 break;
1451 }
1452
1453 if (!error && !eap->skip
1454 && callback(&lv, name_end, eap, deep, cookie) == FAIL)
1455 error = TRUE;
1456
1457 if (!eap->skip)
1449 clear_lval(&lv); 1458 clear_lval(&lv);
1450 break; 1459 }
1451 }
1452
1453 if (!error && !eap->skip
1454 && callback(&lv, name_end, eap, deep, cookie) == FAIL)
1455 error = TRUE;
1456
1457 if (!eap->skip)
1458 clear_lval(&lv);
1459 1460
1460 arg = skipwhite(name_end); 1461 arg = skipwhite(name_end);
1461 } while (!ends_excmd2(name_end, arg)); 1462 } while (!ends_excmd2(name_end, arg));
1462 1463
1463 eap->nextcmd = check_nextcmd(arg); 1464 eap->nextcmd = check_nextcmd(arg);