diff options
author | Oliver Buchtala <oliver.buchtala@googlemail.com> | 2014-05-19 11:46:21 +0200 |
---|---|---|
committer | Oliver Buchtala <oliver.buchtala@googlemail.com> | 2014-05-19 11:46:21 +0200 |
commit | 7cc617a19d2c7834ee877af920a824cd29a92a89 (patch) | |
tree | 1971b0c6bb0d83e88cbadc5620f7c69833fad53a | |
parent | 394a8bebe7c2802cb2b10d4b302adf49997be468 (diff) | |
download | swig-7cc617a19d2c7834ee877af920a824cd29a92a89.tar.gz |
Revert "Javascript: support null pointers."
This reverts commit 11963788e0d008e1c6e997577086cd8dd584c03f.
-rw-r--r-- | Examples/test-suite/javascript/null_pointer_runme.js | 9 | ||||
-rw-r--r-- | Lib/javascript/jsc/javascriptrun.swg | 18 | ||||
-rw-r--r-- | Lib/javascript/v8/javascriptrun.swg | 12 |
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; |