diff options
-rw-r--r-- | AUTHORS | 2 | ||||
-rw-r--r-- | src/library.js | 22 | ||||
-rwxr-xr-x | tests/runner.py | 16 |
3 files changed, 40 insertions, 0 deletions
@@ -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') |