From: Dean Luick Date: Sat, 9 Jan 2021 01:00:11 +0000 (-0600) Subject: Fix sprintf warnings in weapon.c X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=389f6ca647048e0344f02afb528aa89b180f204e;p=nethack Fix sprintf warnings in weapon.c --- diff --git a/src/weapon.c b/src/weapon.c index dd2aad430..698d090c0 100644 --- a/src/weapon.c +++ b/src/weapon.c @@ -1271,21 +1271,23 @@ enhance_weapon_skill() (void) skill_level_name(i, sklnambuf); if (wizard) { if (!iflags.menu_tab_sep) - Sprintf(buf, " %s%-*s %-12s %5d(%4d)", prefix, - longest, P_NAME(i), sklnambuf, P_ADVANCE(i), - practice_needed_to_advance(P_SKILL(i))); + n = snprintf(buf, sizeof(buf), " %s%-*s %-12s %5d(%4d)", prefix, + longest, P_NAME(i), sklnambuf, P_ADVANCE(i), + practice_needed_to_advance(P_SKILL(i))); else - Sprintf(buf, " %s%s\t%s\t%5d(%4d)", prefix, P_NAME(i), - sklnambuf, P_ADVANCE(i), - practice_needed_to_advance(P_SKILL(i))); + n = snprintf(buf, sizeof(buf), " %s%s\t%s\t%5d(%4d)", prefix, P_NAME(i), + sklnambuf, P_ADVANCE(i), + practice_needed_to_advance(P_SKILL(i))); } else { if (!iflags.menu_tab_sep) - Sprintf(buf, " %s %-*s [%s]", prefix, longest, - P_NAME(i), sklnambuf); + n = snprintf(buf, sizeof(buf), " %s %-*s [%s]", prefix, longest, + P_NAME(i), sklnambuf); else - Sprintf(buf, " %s%s\t[%s]", prefix, P_NAME(i), - sklnambuf); + n = snprintf(buf, sizeof(buf), " %s%s\t[%s]", prefix, P_NAME(i), + sklnambuf); } + if (n >= sizeof(buf)) /* check for overflow */ + buf[sizeof(buf)-1] = 0; /* terminate string */ any.a_int = can_advance(i, speedy) ? i + 1 : 0; add_menu(win, &nul_glyphinfo, &any, 0, 0, ATR_NONE, buf, MENU_ITEMFLAGS_NONE);