Fix incorrect error handling of call to mbrtowc. This is PR#13759. Leaving the bug open because (1) I'm not sure that we're correct here, only better than before, and (2) no tests

llvm-svn: 233012
Cr-Mirrored-From: sso://chromium.googlesource.com/_direct/external/github.com/llvm/llvm-project
Cr-Mirrored-Commit: c5a996f111037e637ca3bd837556018d94cf9226
diff --git a/src/locale.cpp b/src/locale.cpp
index 54a24e6..2842bfc 100644
--- a/src/locale.cpp
+++ b/src/locale.cpp
@@ -1657,7 +1657,7 @@
             frm_nxt = frm;
             return frm_nxt == frm_end ? ok : partial;
         }
-        if (n == 0)
+        if (n == (size_t)-1)
             return error;
         to_nxt += n;
         if (to_nxt == to_end)