mbsinit: Don't crash for a NULL argument. 20110225070542/gnulib 20110226030503/gnulib 20110227030503/gnulib 20110228030503/gnulib 20110301030502/gnulib 20110302030503/gnulib 20110303030502/gnulib 20110304030502/gnulib 20110305030508/gnulib 20110306030502/gnulib 20110307030503/gnulib 20110308030502/gnulib 20110309030501/gnulib 20110310030503/gnulib 20110311030503/gnulib 20110312030504/gnulib 20110313030503/gnulib 20110314030506/gnulib 20110315030503/gnulib 20110316030502/gnulib 20110317030504/gnulib 20110318030507/gnulib 20110319030507/gnulib 20110320030508/gnulib 20110321030505/gnulib 20110322030503/gnulib 20110323030507/gnulib 20110324030502/gnulib 20110325030502/gnulib 20110326030503/gnulib 20110327030503/gnulib 20110328030503/gnulib 20110329030503/gnulib 20110330030502/gnulib 20110331030503/gnulib 20110401030503/gnulib 20110402030503/gnulib 20110403030503/gnulib 20110404030502/gnulib 20110405030501/gnulib 20110406030501/gnulib 20110407030503/gnulib 20110408030502/gnulib 20110409030503/gnulib 20110410030503/gnulib 20110411030503/gnulib 20110412030503/gnulib 20110413030503/gnulib 20110414030503/gnulib 20110415030503/gnulib 20110416030505/gnulib 20110417030505/gnulib 20110418030503/gnulib 20110419030503/gnulib 20110420030502/gnulib 20110421030503/gnulib 20110422030503/gnulib 20110423030508/gnulib 20110424030507/gnulib 20110425030507/gnulib 20110426030507/gnulib 20110427030503/gnulib 20110428030504/gnulib 20110429030503/gnulib 20110430030503/gnulib 20110501030503/gnulib 20110502030502/gnulib 20110503030504/gnulib 20110504030502/gnulib 20110505030505/gnulib 20110506030503/gnulib 20110507030503/gnulib 20110508030508/gnulib 20110509030503/gnulib 20110510030502/gnulib 20110511030502/gnulib 20110512030504/gnulib 20110513030505/gnulib 20110514030504/gnulib 20110515030504/gnulib 20110516030504/gnulib 20110517030504/gnulib 20110518030503/gnulib 20110519030505/gnulib 20110520030502/gnulib 20110521030504/gnulib 20110522030504/gnulib 20110523030503/gnulib 20110524030503/gnulib 20110525030502/gnulib 20110526030508/gnulib 20110527030503/gnulib 20110528030502/gnulib 20110529030503/gnulib 20110530030505/gnulib 20110531030503/gnulib 20110601030502/gnulib 20110602030504/gnulib 20110604030501/gnulib 20110605030503/gnulib 20110606030503/gnulib 20110607030504/gnulib 20110608030502/gnulib 20110609030504/gnulib 20110610030503/gnulib 20110611030504/gnulib 20110612030504/gnulib 20110613030503/gnulib 20110614030503/gnulib 20110615030502/gnulib 20110616030507/gnulib 20110617030506/gnulib 20110618030505/gnulib 20110619030505/gnulib 20110620030503/gnulib 20110621030504/gnulib 20110622030502/gnulib 20110623030506/gnulib 20110624030506/gnulib 20110625030504/gnulib 20110626030505/gnulib 20110627030508/gnulib 20110628030505/gnulib 20110629030502/gnulib 20110630030506/gnulib 20110701030505/gnulib 20110702030505/gnulib 20110703030504/gnulib 20110704030504/gnulib 20110705030501/gnulib 20110706030501/gnulib 20110707030503/gnulib 20110708030504/gnulib 20110709030504/gnulib 20110710030504/gnulib 20110711030504/gnulib 20110712030504/gnulib 20110713030502/gnulib 20110714030505/gnulib 20110715030503/gnulib 20110716030503/gnulib 20110717030505/gnulib 20110718030502/gnulib 20110719030503/gnulib 20110720030502/gnulib 20110721030503/gnulib 20110722030508/gnulib 20110723030508/gnulib 20110724030502/gnulib 20110725030501/gnulib 20110726030507/gnulib 20110727030501/gnulib 20110728030503/gnulib 20110729030502/gnulib 20110730030502/gnulib 20110731030502/gnulib 20110801030502/gnulib 20110802030502/gnulib 20110803030502/gnulib 20110804030503/gnulib 20110805030503/gnulib 20110806030502/gnulib 20110807030502/gnulib 20110808030503/gnulib 20110810030501/gnulib 20110811030503/gnulib 20110812030503/gnulib 20110813030502/gnulib 20110814030502/gnulib 20110815030503/gnulib
authorBruno Haible <bruno@clisp.org>
Sun, 13 Feb 2011 17:04:55 +0000 (18:04 +0100)
committerBruno Haible <bruno@clisp.org>
Sun, 13 Feb 2011 17:04:55 +0000 (18:04 +0100)
* lib/mbsinit.c (mbsinit): When the argument is NULL, return 1.
* tests/test-mbsinit.c (mbsinit): Check this behaviour.

ChangeLog
lib/mbsinit.c
tests/test-mbsinit.c

index 68ffd30abb99cb8e446db7365f04d10648190fd1..3382c603366280fe0be9d32c803aa7e5df9f1b1a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2011-02-13  Bruno Haible  <bruno@clisp.org>
+
+       mbsinit: Don't crash for a NULL argument.
+       * lib/mbsinit.c (mbsinit): When the argument is NULL, return 1.
+       * tests/test-mbsinit.c (mbsinit): Check this behaviour.
+
 2011-02-13  Bruno Haible  <bruno@clisp.org>
 
        Don't interfere with a program's definition of __attribute__.
index c08695ce24666dee5d46b37573108c7d71c791d5..869c0a6ab9e542c372a17282e1ee70df124f0ea6 100644 (file)
@@ -43,5 +43,5 @@ mbsinit (const mbstate_t *ps)
 {
   const char *pstate = (const char *)ps;
 
-  return pstate[0] == 0;
+  return pstate == NULL || pstate[0] == 0;
 }
index d2d98b2dec41ed069dcab83b2e7603304ebdc20a..2cc2924ed5c6c448d88141195e307b4138843226 100644 (file)
@@ -32,6 +32,8 @@ main (int argc, char *argv[])
 {
   static mbstate_t state;
 
+  ASSERT (mbsinit (NULL));
+
   ASSERT (mbsinit (&state));
 
   if (argc > 1)