aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-07-12 14:13:40 -0700
committerAlon Zakai <alonzakai@gmail.com>2012-07-12 14:16:03 -0700
commit96f8df489e01be9bd834c58f4c703ef9bb0570b1 (patch)
tree8ab6f067a23c5fd0359075d57556f80ffbb6fa7d
parent733914ce08ac55dcdeea7d610343bd8e963c26fb (diff)
parent2c138e342d296c8a46df7c48e4161a5b8bb3d8f2 (diff)
Merge pull request #380 from linghuye/master
-rw-r--r--AUTHORS2
-rw-r--r--src/library.js22
-rwxr-xr-xtests/runner.py16
3 files changed, 40 insertions, 0 deletions
diff --git a/AUTHORS b/AUTHORS
index 07679f43..866bc0c3 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -25,3 +25,5 @@ under the licensing terms detailed in LICENSE.
* Aleksander Guryanov <caiiiycuk@gmail.com>
* Chad Austin <chad@chadaustin.me>
* nandhp <nandhp@gmail.com>
+* YeZhongWen <linghuye2.0@gmail.com>
+
diff --git a/src/library.js b/src/library.js
index 104b0dc4..bb73c48a 100644
--- a/src/library.js
+++ b/src/library.js
@@ -4073,6 +4073,28 @@ LibraryManager.library = {
}
return pdest;
},
+
+ strlwr__deps:['tolower'],
+ strlwr: function(pstr){
+ var i = 0;
+ while(1) {
+ var x = {{{ makeGetValue('pstr', 'i', 'i8') }}};
+ if(x == 0) break;
+ {{{ makeSetValue('pstr', 'i', '_tolower(x)', 'i8') }}};
+ i++;
+ }
+ },
+
+ strupr__deps:['toupper'],
+ strupr: function(pstr){
+ var i = 0;
+ while(1) {
+ var x = {{{ makeGetValue('pstr', 'i', 'i8') }}};
+ if(x == 0) break;
+ {{{ makeSetValue('pstr', 'i', '_toupper(x)', 'i8') }}};
+ i++;
+ }
+ },
strcat__deps: ['strlen'],
strcat: function(pdest, psrc) {
diff --git a/tests/runner.py b/tests/runner.py
index 0efd19d9..4bf3f5ee 100755
--- a/tests/runner.py
+++ b/tests/runner.py
@@ -3857,6 +3857,22 @@ at function.:blag
src = open(path_from_root('tests', 'parseInt', 'src.c'), 'r').read()
expected = open(path_from_root('tests', 'parseInt', 'output.txt'), 'r').read()
self.do_run(src, expected)
+
+ def test_transtrcase(self):
+ src = '''
+ #include <stdio.h>
+ #include <string.h>
+ int main() {
+ char szToupr[] = "hello, ";
+ char szTolwr[] = "EMSCRIPTEN";
+ strupr(szToupr);
+ strlwr(szTolwr);
+ printf(szToupr);
+ printf(szTolwr);
+ return 0;
+ }
+ '''
+ self.do_run(src, 'HELLO, emscripten')
def test_printf(self):
if Settings.USE_TYPED_ARRAYS != 2: return self.skip('i64 mode 1 requires ta2')