]> Savannah Git Hosting - gnulib.git/commitdiff
btoc32: Optimize clearing an mbstate_t.
authorBruno Haible <bruno@clisp.org>
Sun, 16 Jul 2023 05:30:27 +0000 (07:30 +0200)
committerBruno Haible <bruno@clisp.org>
Sun, 16 Jul 2023 08:29:19 +0000 (10:29 +0200)
* lib/btoc32.c: Include <wchar.h>.
(btoc32): Use mbszero.
* modules/btoc32 (Depends-on): Add mbszero.

ChangeLog
lib/btoc32.c
modules/btoc32

index 8694418f5addff78995be7a30f046313b221ab95..efb0dbf60071ebbba266d1562c0859b81dede6da 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2023-07-16  Bruno Haible  <bruno@clisp.org>
+
+       btoc32: Optimize clearing an mbstate_t.
+       * lib/btoc32.c: Include <wchar.h>.
+       (btoc32): Use mbszero.
+       * modules/btoc32 (Depends-on): Add mbszero.
+
 2023-07-16  Bruno Haible  <bruno@clisp.org>
 
        btowc: Optimize clearing an mbstate_t.
index c5ed227a8be25d5a160beee5023a3a63bdefb328..4d5b9067e7424ba5bb6f64dc87cde5fe2d0ee874 100644 (file)
@@ -24,6 +24,7 @@
 
 #include <stdio.h>
 #include <string.h>
+#include <wchar.h>
 
 #if GL_CHAR32_T_IS_UNICODE
 # include "lc-charset-unicode.h"
@@ -44,7 +45,7 @@ btoc32 (int c)
       char s[1];
       char32_t wc;
 
-      memset (&state, '\0', sizeof (mbstate_t));
+      mbszero (&state);
       s[0] = (unsigned char) c;
       if (mbrtoc32 (&wc, s, 1, &state) <= 1)
         return wc;
index 1a532a9eb3b0096c9d31eb9170dcc90ad23bb8d9..e6385398ec7b98cf4de0e4d2b91829e1829f8949 100644 (file)
@@ -6,6 +6,7 @@ lib/btoc32.c
 
 Depends-on:
 uchar
+mbszero
 mbrtoc32
 btowc