emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master b5f17fe07c6: * admin/unidata/emoji-zwj.awk: Avoid sprint buffer o


From: Mattias Engdegård
Subject: master b5f17fe07c6: * admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflow
Date: Sat, 3 Jun 2023 06:58:23 -0400 (EDT)

branch: master
commit b5f17fe07c6624380ba8d0c7a400a6b89f225209
Author: Mattias Engdegård <mattiase@acm.org>
Commit: Mattias Engdegård <mattiase@acm.org>

    * admin/unidata/emoji-zwj.awk: Avoid sprint buffer overflow
    
    Some AWK implementations have a fixed buffer for sprintf; for mawk the
    default size is 8192 bytes.  Hoist a string concatenation from
    a sprintf call to avoid running into that limit.  See discussion at
    https://lists.gnu.org/archive/html/emacs-devel/2023-06/msg00090.html .
---
 admin/unidata/emoji-zwj.awk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/admin/unidata/emoji-zwj.awk b/admin/unidata/emoji-zwj.awk
index f13f796bcac..4b648aa675e 100644
--- a/admin/unidata/emoji-zwj.awk
+++ b/admin/unidata/emoji-zwj.awk
@@ -106,7 +106,7 @@ END {
 
      for (elt in ch)
     {
-        entries = 
sprintf("%s\n\"\\N{U+%s}\\N{U+FE0E}\"\n\"\\N{U+%s}\\N{U+FE0F}\"", vec[elt], 
elt, elt)
+        entries = vec[elt] 
sprintf("\n\"\\N{U+%s}\\N{U+FE0E}\"\n\"\\N{U+%s}\\N{U+FE0F}\"", elt, elt)
         printf("(#x%s .\n,(eval-when-compile (regexp-opt\n'(\n%s\n))))\n", 
elt, entries)
     }
      print "))"



reply via email to

[Prev in Thread] Current Thread [Next in Thread]