From: Paul Eggert Date: Mon, 27 Jan 2025 06:15:50 +0000 (-0800) Subject: Fix unlikely eassert failure in invalid_radix_integer X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=b0f307ec3be65afb038730c808cb3ec4dea0503e;p=emacs.git Fix unlikely eassert failure in invalid_radix_integer * src/lread.c (invalid_radix_integer): Simplify by using sprintf with a big-enough buffer. (cherry picked from commit a5c47258ffe6d037e3e3c3665ca82a18661cc82c) --- diff --git a/src/lread.c b/src/lread.c index e5d1ba0e6bb..de1b0ae2d06 100644 --- a/src/lread.c +++ b/src/lread.c @@ -3109,9 +3109,9 @@ digit_to_number (int character, int base) static void invalid_radix_integer (EMACS_INT radix, Lisp_Object readcharfun) { - char buf[64]; - int n = snprintf (buf, sizeof buf, "integer, radix %"pI"d", radix); - eassert (n < sizeof buf); + static char const format[] = "integer, radix %"pI"d"; + char buf[sizeof format - sizeof "%"pI"d" + INT_BUFSIZE_BOUND (radix)]; + sprintf (buf, format, radix); invalid_syntax (buf, readcharfun); }