[lode.leroy: BUG: mbsrtowcs does not conform to spec]

Christopher Faylor cgf-no-personal-reply-please@cygwin.com
Wed Jan 21 15:02:00 GMT 2004

----- Forwarded message from lode.leroy

The spec says that mbsrtowcs() should return the length of the string
_even_when_the_output_buffer_is_NULL_ .

currently mbsrtowcs(NULL, ...) returns 0.

#include <stdio.h>
#include <wchar.h>
#include <string.h>

   int len;
   char* s = "test";
   mbstate_t mbstate;
   memset(&mbstate, 0, sizeof(mbstate));
   len = mbsrtowcs(NULL, (const char **)&s, 0, &mbstate);

   printf("s='%s' - strlen(s)=%d - mbstowcs(s)=%d\n", s, strlen(s), len);

cygwin$ ./mbsrtowcs
s='test' - strlen(s)=4 - mbstowcs(s)=0

linux$ ./mbsrtowcs
s='test' - strlen(s)=4 - mbstowcs(s)=4

Plaats je zoekertjes GRATIS op AdValvas
Placez votre petite annonce GRATUITEMENT sur AdValvas

Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

----- End forwarded message -----

More information about the Newlib mailing list