diff options
author | nicolas.dufresne <nicolas.dufresne@c587cffe-e639-0410-9787-d7902ae8ed56> | 2010-06-04 16:16:06 +0000 |
---|---|---|
committer | nicolas.dufresne <nicolas.dufresne@c587cffe-e639-0410-9787-d7902ae8ed56> | 2010-06-04 16:16:06 +0000 |
commit | 93ff2b05c17fd5827ca2b2c6b629d6ce715459a8 (patch) | |
tree | 17c8a752311f2786f250632478ef949d17e3445a /libproxy/modules | |
parent | 3f1ddd9a9f1ae99d4f05622563490a3ae67c468c (diff) | |
download | libproxy-93ff2b05c17fd5827ca2b2c6b629d6ce715459a8.tar.gz |
pacrunner_webkit: Don't throw bad_alloc on script errors
git-svn-id: http://libproxy.googlecode.com/svn/trunk@689 c587cffe-e639-0410-9787-d7902ae8ed56
Diffstat (limited to 'libproxy/modules')
-rw-r--r-- | libproxy/modules/pacrunner_webkit.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/libproxy/modules/pacrunner_webkit.cpp b/libproxy/modules/pacrunner_webkit.cpp index cc7e2c8..b9abf34 100644 --- a/libproxy/modules/pacrunner_webkit.cpp +++ b/libproxy/modules/pacrunner_webkit.cpp @@ -149,6 +149,7 @@ public: // Run the PAC tmp = string("FindProxyForURL(\"") + url_.to_string() + string("\", \"") + url_.get_host() + "\");"; str = JSStringCreateWithUTF8CString(tmp.c_str()); + if (!str) throw bad_alloc(); if (!JSCheckScriptSyntax(this->jsctx, str, NULL, 0, NULL)) goto error; if (!(val = JSEvaluateScript(this->jsctx, str, NULL, NULL, 1, NULL))) goto error; if (!JSValueIsString(this->jsctx, val)) goto error; @@ -158,8 +159,8 @@ public: return jstr2str(JSValueToStringCopy(this->jsctx, val, NULL), true); error: - if (str) JSStringRelease(str); - throw bad_alloc(); + JSStringRelease(str); + return ""; } private: |