Index: src/GlobalJsObject.cpp |
=================================================================== |
--- a/src/GlobalJsObject.cpp |
+++ b/src/GlobalJsObject.cpp |
@@ -84,20 +84,22 @@ namespace |
// clearTimeout(), we can save that for later. |
return v8::Undefined(); |
} |
v8::Handle<v8::Value> TriggerEventCallback(const v8::Arguments& arguments) |
{ |
AdblockPlus::JsEnginePtr jsEngine = AdblockPlus::JsEngine::FromArguments(arguments); |
AdblockPlus::JsValueList converted = jsEngine->ConvertArguments(arguments); |
- if (converted.size() != 1) |
- return v8::ThrowException(v8::String::New("_triggerEvent expects one parameter")); |
+ if (converted.size() < 1) |
+ return v8::ThrowException(v8::String::New("_triggerEvent expects at least one parameter")); |
- jsEngine->TriggerEvent(converted[0]->AsString()); |
+ std::string eventName = converted.front()->AsString(); |
+ converted.erase(converted.begin()); |
+ jsEngine->TriggerEvent(eventName, converted); |
return v8::Undefined(); |
} |
} |
JsValuePtr GlobalJsObject::Setup(JsEnginePtr jsEngine, const AppInfo& appInfo, |
JsValuePtr obj) |
{ |
obj->SetProperty("setTimeout", jsEngine->NewCallback(::SetTimeoutCallback)); |