summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOliver Buchtala <oliver.buchtala@googlemail.com>2014-05-19 11:46:21 +0200
committerOliver Buchtala <oliver.buchtala@googlemail.com>2014-05-19 11:46:21 +0200
commit7cc617a19d2c7834ee877af920a824cd29a92a89 (patch)
tree1971b0c6bb0d83e88cbadc5620f7c69833fad53a
parent394a8bebe7c2802cb2b10d4b302adf49997be468 (diff)
downloadswig-7cc617a19d2c7834ee877af920a824cd29a92a89.tar.gz
Revert "Javascript: support null pointers."
This reverts commit 11963788e0d008e1c6e997577086cd8dd584c03f.
-rw-r--r--Examples/test-suite/javascript/null_pointer_runme.js9
-rw-r--r--Lib/javascript/jsc/javascriptrun.swg18
-rw-r--r--Lib/javascript/v8/javascriptrun.swg12
3 files changed, 7 insertions, 32 deletions
diff --git a/Examples/test-suite/javascript/null_pointer_runme.js b/Examples/test-suite/javascript/null_pointer_runme.js
deleted file mode 100644
index 7c0d61244..000000000
--- a/Examples/test-suite/javascript/null_pointer_runme.js
+++ /dev/null
@@ -1,9 +0,0 @@
-var null_pointer = require("null_pointer");
-
-if (!null_pointer.func(null)) {
- throw new Error("Javascript 'null' should be converted into NULL.");
-}
-
-if (null_pointer.getnull() != null) {
- throw new Error("NULL should be converted into Javascript 'null'.");
-}
diff --git a/Lib/javascript/jsc/javascriptrun.swg b/Lib/javascript/jsc/javascriptrun.swg
index 1ff10a183..9655b0eb6 100644
--- a/Lib/javascript/jsc/javascriptrun.swg
+++ b/Lib/javascript/jsc/javascriptrun.swg
@@ -99,9 +99,7 @@ SWIGRUNTIME JSClassRef _SwigObject_classRef;
SWIGRUNTIME int SWIG_JSC_ConvertInstancePtr(JSContextRef context, JSObjectRef objRef, void** ptr, swig_type_info *info, int flags) {
- SwigPrivData *cdata;
-
- cdata = (SwigPrivData *) JSObjectGetPrivate(objRef);
+ SwigPrivData *cdata = (SwigPrivData *) JSObjectGetPrivate(objRef);
if(cdata == NULL) {
return SWIG_ERROR;
}
@@ -137,7 +135,7 @@ SWIGRUNTIME int SWIG_JSC_ConvertPtr(JSContextRef context, JSValueRef valRef, voi
*ptr=0;
return SWIG_OK;
}
-
+
if(!JSValueIsObject(context, valRef)) {
return SWIG_TypeError;
}
@@ -151,23 +149,17 @@ SWIGRUNTIME int SWIG_JSC_ConvertPtr(JSContextRef context, JSValueRef valRef, voi
}
SWIGRUNTIME JSObjectRef SWIG_JSC_NewPointerObj(JSContextRef context, void *ptr, swig_type_info *info, int flags) {
- JSClassRef classRef;
- JSObjectRef result;
- SwigPrivData *cdata;
-
- if (ptr == NULL) {
- return JSValueToObject(context, JSValueMakeNull(context), 0);
- }
+ JSClassRef classRef;
if(info->clientdata == NULL) {
classRef = _SwigObject_classRef;
} else {
classRef = (JSClassRef) info->clientdata;
}
- result = JSObjectMake(context, classRef, NULL);
+ JSObjectRef result = JSObjectMake(context, classRef, NULL);
- cdata = (SwigPrivData*) malloc(sizeof(SwigPrivData));
+ SwigPrivData* cdata = (SwigPrivData*) malloc(sizeof(SwigPrivData));
cdata->swigCObject = ptr;
cdata->swigCMemOwn = (flags & SWIG_POINTER_OWN) ? 1 : 0;
cdata->info = info;
diff --git a/Lib/javascript/v8/javascriptrun.swg b/Lib/javascript/v8/javascriptrun.swg
index f200f1520..2e0a46717 100644
--- a/Lib/javascript/v8/javascriptrun.swg
+++ b/Lib/javascript/v8/javascriptrun.swg
@@ -220,11 +220,7 @@ void SWIGV8_SetPrivateData(v8::Handle<v8::Object> obj, void* ptr, swig_type_info
int SWIG_V8_ConvertPtr(v8::Handle<v8::Value> valRef, void** ptr, swig_type_info *info, int flags) {
v8::HandleScope scope;
- /* special case: JavaScript null => C NULL pointer */
- if(valRef->IsNull()) {
- *ptr=0;
- return SWIG_OK;
- }
+
if(!valRef->IsObject()) {
return SWIG_TypeError;
}
@@ -232,14 +228,10 @@ int SWIG_V8_ConvertPtr(v8::Handle<v8::Value> valRef, void** ptr, swig_type_info
return SWIG_V8_ConvertInstancePtr(objRef, ptr, info, flags);
}
-v8::Handle<v8::Value> SWIG_V8_NewPointerObj(void *ptr, swig_type_info *info, int flags) {
+v8::Handle<v8::Object> SWIG_V8_NewPointerObj(void *ptr, swig_type_info *info, int flags) {
v8::HandleScope scope;
v8::Handle<v8::FunctionTemplate> class_templ;
- if (ptr == NULL) {
- return scope.Close(v8::Null());
- }
-
#if (SWIG_V8_VERSION < 0x031900)
if(info->clientdata != 0) {
class_templ = ((SWIGV8_ClientData*) info->clientdata)->class_templ;