fix typo in dynamic linker path file loading code
[musl] / src / multibyte / mbsnrtowcs.c
index c6f0207..33457f9 100644 (file)
@@ -12,7 +12,7 @@
 
 #include "internal.h"
 
-size_t mbsnrtowcs(wchar_t *wcs, const char **src, size_t n, size_t wn, mbstate_t *st)
+size_t mbsnrtowcs(wchar_t *restrict wcs, const char **restrict src, size_t n, size_t wn, mbstate_t *restrict st)
 {
        size_t l, cnt=0, n2;
        wchar_t *ws, wbuf[256];
@@ -47,6 +47,10 @@ size_t mbsnrtowcs(wchar_t *wcs, const char **src, size_t n, size_t wn, mbstate_t
                                cnt = l;
                                break;
                        }
+                       if (!l) {
+                               s = 0;
+                               break;
+                       }
                        /* have to roll back partial character */
                        *(unsigned *)st = 0;
                        break;