1 /* mbsinit( mbstate_t * ps )
3 This file is part of the Public Domain C Library (PDCLib).
4 Permission is granted to use, modify, and / or redistribute at will.
9 #include "_PDCLIB_encoding.h"
10 #include "_PDCLIB_locale.h"
12 static int _PDCLIB_mbsinit_l( const mbstate_t *ps, locale_t l )
15 return ps->_Surrogate == 0
16 && ps->_PendState == 0
17 && l->_Codec->__mbsinit(ps);
21 int mbsinit( const mbstate_t * ps )
23 return _PDCLIB_mbsinit_l(ps, _PDCLIB_threadlocale());
29 #include "_PDCLIB_test.h"
34 memset(&mbs, 0, sizeof mbs);
36 TESTCASE(mbsinit(NULL) != 0);
37 TESTCASE(mbsinit(&mbs) != 0);
41 mbs._Surrogate = 0xFEED;
42 TESTCASE(mbsinit(&mbs) == 0);
46 TESTCASE(mbsinit(&mbs) == 0);