aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-01-17 17:03:56 -0800
committerAlon Zakai <alonzakai@gmail.com>2012-01-17 17:03:56 -0800
commit2cb805eef875b474920b758459f2cc7a4ead15a6 (patch)
tree964e625c80bef0d11b2dd1c530c75a444d23e592
parent074e5f54d468730b3719fac72710322170a20535 (diff)
add some library stubs
-rw-r--r--src/library.js34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/library.js b/src/library.js
index 98be6f31..35466c10 100644
--- a/src/library.js
+++ b/src/library.js
@@ -3680,6 +3680,32 @@ LibraryManager.library = {
}
},
+ mbtowc: function(pwc, pmb, maxx) {
+ // XXX doesn't really handle multibyte at all
+ if (!pmb) return 0;
+ maxx = Math.min({{{ cDefine('_NL_CTYPE_MB_CUR_MAX') }}}, maxx);
+ var i;
+ for (i = 0; i < maxx; i++) {
+ var curr = {{{ makeGetValue('pmb', 0, 'i8') }}};
+ if (pwc) {
+ {{{ makeSetValue('pwc', '0', 'curr', 'i8') }}};
+ {{{ makeSetValue('pwc', '1', '0', 'i8') }}};
+ pwc += 2;
+ }
+ pmb++;
+ if (!curr) break;
+ }
+ return i;
+ },
+
+ wcrtomb: function(s, wc, ps) {
+ // XXX doesn't really handle multibyte at all
+ if (s) {
+ {{{ makeSetValue('s', '0', 'wc', 'i8') }}};
+ }
+ return 1;
+ },
+
// ==========================================================================
// string.h
// ==========================================================================
@@ -5211,6 +5237,14 @@ LibraryManager.library = {
// locale.h
// ==========================================================================
+ newlocale: function(mask, locale, base) {
+ return 0;
+ },
+
+ uselocale: function(locale) {
+ return 0;
+ },
+
setlocale: function(category, locale) {
if (!_setlocale.ret) _setlocale.ret = allocate([0], 'i8', ALLOC_NORMAL);
return _setlocale.ret;