int
DEFUN(wctomb, (s, wchar), register char *s AND wchar_t wchar)
{
int
DEFUN(wctomb, (s, wchar), register char *s AND wchar_t wchar)
{
register CONST mb_char *mb;
if (_ctype_info->mbchar == NULL)
mb = NULL;
else
mb = _ctype_info->mbchar->mb_chars;
register CONST mb_char *mb;
if (_ctype_info->mbchar == NULL)
mb = NULL;
else
mb = _ctype_info->mbchar->mb_chars;
mb += wchar + _mb_shift;
if (mb->string == NULL || mb->len == 0)
return -1;
memcpy((PTR) s, (CONST PTR) mb->string, mb->len + 1);
_mb_shift += mb->shift;
return mb->len;
mb += wchar + _mb_shift;
if (mb->string == NULL || mb->len == 0)
return -1;
memcpy((PTR) s, (CONST PTR) mb->string, mb->len + 1);
_mb_shift += mb->shift;
return mb->len;