diff options
author | max99x <max99x@gmail.com> | 2011-09-15 18:07:33 +0300 |
---|---|---|
committer | max99x <max99x@gmail.com> | 2011-09-15 18:07:33 +0300 |
commit | a39cbaf4f3d6da7122a83697d29e4ff3fc71ddfb (patch) | |
tree | e43d5702151d9e7bcf732956dd7f872bc90fb526 | |
parent | b06c356f6053b1cade5c6e73958ebc7b6cc58d4b (diff) |
Fixed support for library-defined globals of non-struct types.
-rw-r--r-- | src/jsifier.js | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/jsifier.js b/src/jsifier.js index 29942002..9a2a82c4 100644 --- a/src/jsifier.js +++ b/src/jsifier.js @@ -213,7 +213,13 @@ function JSify(data, functionsOnly, givenFunctions, givenGlobalVariables) { LibraryManager.library[shortident].length && !BUILD_AS_SHARED_LIB) { var val = LibraryManager.library[shortident]; - var padded = val.concat(makeEmptyStruct(item.type).slice(val.length)); + var padding; + if (Runtime.isNumberType(item.type) || isPointerType(item.type)) { + padding = [item.type].concat(zeros(getNativeFieldSize(item.type))); + } else { + padding = makeEmptyStruct(item.type); + } + var padded = val.concat(padding.slice(val.length)); var js = item.ident + '=' + makePointer(JSON.stringify(padded), null, 'ALLOC_STATIC', item.type) + ';' if (LibraryManager.library[shortident + '__postset']) { js += '\n' + LibraryManager.library[shortident + '__postset']; |