Throw an exception if OnigRegExp fails to create a regex from a pattern

This commit is contained in:
Corey Johnson 2012-11-08 12:21:20 -08:00
parent 207281aa1c
commit 608b7ee9e1

View File

@ -76,9 +76,13 @@ bool OnigRegExp::Execute(const CefString& name,
return true;
}
else if (name == "buildOnigRegExp") {
CefRefPtr<CefBase> userData = new OnigRegExpUserData(arguments[0]);
CefRefPtr<CefV8Value> pattern = arguments[0];
CefRefPtr<OnigRegExpUserData> userData = new OnigRegExpUserData(pattern);
if (!userData->m_regex) {
exception = std::string("Failed to create OnigRegExp from pattern '") + pattern->GetStringValue().ToString() + "'";
}
retval = CefV8Value::CreateObject(NULL);
retval->SetUserData(userData);
retval->SetUserData((CefRefPtr<CefBase>)userData);
return true;
}