X-Git-Url: https://git.saurik.com/apple/libc.git/blobdiff_plain/59e0d9fe772464b93d835d2a2964457702469a43..3d9156a7a519a5e3aa1b92e9d9d4b991f1aed7ff:/locale/FreeBSD/mbrlen.c diff --git a/locale/FreeBSD/mbrlen.c b/locale/FreeBSD/mbrlen.c index 0d49fe5..33f7ea0 100644 --- a/locale/FreeBSD/mbrlen.c +++ b/locale/FreeBSD/mbrlen.c @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2002 Tim J. Robbins. + * Copyright (c) 2002-2004 Tim J. Robbins. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -25,13 +25,17 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/locale/mbrlen.c,v 1.2 2002/09/06 11:23:45 tjr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/locale/mbrlen.c,v 1.4 2004/05/12 14:26:54 tjr Exp $"); #include +#include "mblocal.h" size_t -mbrlen(const char * __restrict s, size_t n, mbstate_t * __restrict ps __unused) +mbrlen(const char * __restrict s, size_t n, mbstate_t * __restrict ps) { + static mbstate_t mbs; - return (mbrtowc(NULL, s, n, NULL)); + if (ps == NULL) + ps = &mbs; + return (__mbrtowc(NULL, s, n, ps)); }