JavaScriptCore:
[WebKit-https.git] / JavaScriptCore / bindings / NP_jsobject.cpp
index 992e7a9b0cbd0388ced361a136c52e9a8050b2b6..e1ea07928b442121491b34c2a7c5fbc79b95559a 100644 (file)
@@ -364,3 +364,19 @@ bool _NPN_HasMethod(NPP npp, NPObject *o, NPIdentifier methodName)
     
     return false;
 }
+
+void _NPN_SetException (NPObject *o, NPString *message)
+{
+    if (o->_class == NPScriptObjectClass) {
+        JavaScriptObject *obj = (JavaScriptObject *)o; 
+        ExecState *exec = obj->root->interpreter()->globalExec();
+        Interpreter::lock();
+        char *msg = (char *)malloc (message->UTF8Length + 1);
+        strncpy (msg, message->UTF8Characters, message->UTF8Length);
+        msg[message->UTF8Length] = 0;
+        Object err = Error::create(exec, GeneralError, msg);
+        free (msg);
+        exec->setException (err);
+        Interpreter::unlock();
+    }
+}