summaryrefslogtreecommitdiff
path: root/Lib/javascript
diff options
context:
space:
mode:
authorVaugham Hong <vaughamhong@gmail.com>2015-12-31 22:56:50 -0800
committerVaugham Hong <vaughamhong@gmail.com>2015-12-31 22:56:50 -0800
commit15e197c807f9befac31f5841d320e5bd0210e8d4 (patch)
treebb1436dc1d747c9394e57365f76e5df56fcc3f77 /Lib/javascript
parentc851e672bd213a5e4e51c30c8bb29743b7c37d1e (diff)
downloadswig-15e197c807f9befac31f5841d320e5bd0210e8d4.tar.gz
fixed build error - ISO C90 forbids mixed declarations and code for jsc
Diffstat (limited to 'Lib/javascript')
-rw-r--r--Lib/javascript/jsc/javascriptinit.swg49
1 files changed, 34 insertions, 15 deletions
diff --git a/Lib/javascript/jsc/javascriptinit.swg b/Lib/javascript/jsc/javascriptinit.swg
index 6e04cbb32..8df5488b0 100644
--- a/Lib/javascript/jsc/javascriptinit.swg
+++ b/Lib/javascript/jsc/javascriptinit.swg
@@ -1,15 +1,26 @@
%insert(init) %{
SWIGRUNTIME void
SWIG_JSC_SetModule(void *clientdata, swig_module_info *swig_module) {
- JSGlobalContextRef context = (JSGlobalContextRef)clientdata;
+ JSGlobalContextRef context;
+ JSObjectRef globalObject;
+ JSStringRef moduleName;
+ JSClassDefinition classDef;
+ JSClassRef classRef;
+ JSObjectRef object;
+
+ if(clientdata == 0){
+ return;
+ }
+
+ context = (JSGlobalContextRef)clientdata;
- JSObjectRef globalObject = JSContextGetGlobalObject(context);
- JSStringRef moduleName = JSStringCreateWithUTF8CString("swig_module_info_data");
+ globalObject = JSContextGetGlobalObject(context);
+ moduleName = JSStringCreateWithUTF8CString("swig_module_info_data");
- JSClassDefinition classDef = kJSClassDefinitionEmpty;
- JSClassRef classRef = JSClassCreate(&classDef);
+ classDef = kJSClassDefinitionEmpty;
+ classRef = JSClassCreate(&classDef);
- JSObjectRef object = JSObjectMake(context, classRef, NULL);
+ object = JSObjectMake(context, classRef, NULL);
JSObjectSetPrivate(object, (void*)swig_module);
JSObjectSetProperty(context, globalObject, moduleName, object, kJSPropertyAttributeNone, NULL);
@@ -19,23 +30,31 @@ SWIG_JSC_SetModule(void *clientdata, swig_module_info *swig_module) {
}
SWIGRUNTIME swig_module_info *
SWIG_JSC_GetModule(void *clientdata) {
- JSGlobalContextRef context = (JSGlobalContextRef)clientdata;
+ JSGlobalContextRef context;
+ JSObjectRef globalObject;
+ JSStringRef moduleName;
+ JSValueRef value;
+ JSObjectRef object;
+
+ if(clientdata == 0){
+ return 0;
+ }
- JSObjectRef globalObject = JSContextGetGlobalObject(context);
- JSStringRef moduleName = JSStringCreateWithUTF8CString("swig_module_info_data");
+ context = (JSGlobalContextRef)clientdata;
+
+ globalObject = JSContextGetGlobalObject(context);
+ moduleName = JSStringCreateWithUTF8CString("swig_module_info_data");
if(JSObjectHasProperty(context, globalObject, moduleName) == false) {
JSStringRelease(moduleName);
return 0;
}
- JSValueRef value = JSObjectGetProperty(context, globalObject, moduleName, NULL);
-
- JSObjectRef object = JSValueToObject(context, value, NULL);
- swig_module_info *swig_module = (swig_module_info*)JSObjectGetPrivate(object);
-
+ value = JSObjectGetProperty(context, globalObject, moduleName, NULL);
+ object = JSValueToObject(context, value, NULL);
JSStringRelease(moduleName);
- return swig_module;
+
+ return (swig_module_info*)JSObjectGetPrivate(object);
}
#define SWIG_GetModule(clientdata) SWIG_JSC_GetModule(clientdata)