diff options
author | max99x <max99x@gmail.com> | 2011-07-01 10:40:19 +0300 |
---|---|---|
committer | max99x <max99x@gmail.com> | 2011-07-01 10:40:19 +0300 |
commit | 5ae66f9b28cb378c42dbf102d5c2f46aabb0ca15 (patch) | |
tree | a12c5e3c4976017940f8df7719c599f8d430923a | |
parent | 7cecdd0d94570d502591fe1acfb17a701a05c698 (diff) |
Added some missing functionality to stat(), sysconf().
-rw-r--r-- | src/library.js | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/library.js b/src/library.js index 4f6af656..2f5290cd 100644 --- a/src/library.js +++ b/src/library.js @@ -785,8 +785,12 @@ var Library = { var info = STDIO.streams[stream]; if (!info) return -1; try { + {{{ makeSetValue('ptr', '$struct_stat___FLATTENER[0]', '1', 'i32') }}} // st_dev. XXX: hardcoded index 0 into the structure. + {{{ makeSetValue('ptr', '$struct_stat___FLATTENER[15]', 'stream', 'i32') }}} // st_ino. XXX: hardcoded index 15 into the structure. {{{ makeSetValue('ptr', '$struct_stat___FLATTENER[9]', 'info.data.length', 'i32') }}} // st_size. XXX: hardcoded index 9 into the structure. } catch(e) { + {{{ makeSetValue('ptr', '0', '1', 'i32') }}} + {{{ makeSetValue('ptr', '15', 'stream', 'i32') }}} {{{ makeSetValue('ptr', '9', 'info.data.length', 'i32') }}} // no FLATTENER } // TODO: other fields @@ -1604,6 +1608,7 @@ var Library = { // XXX we only handle _SC_PAGE_SIZE/PAGESIZE for now, 30 on linux, 29 on OS X... be careful here! switch(name_) { case 29: case 30: return PAGE_SIZE; + case 2: return 1000000; // _SC_CLK_TCK default: throw 'unknown sysconf param: ' + name_; } }, |