| Index: src/FilterEngine.cpp |
| =================================================================== |
| --- a/src/FilterEngine.cpp |
| +++ b/src/FilterEngine.cpp |
| @@ -1,17 +1,18 @@ |
| #include <algorithm> |
| #include <cctype> |
| #include <functional> |
| +#include <string> |
| #include <AdblockPlus.h> |
| using namespace AdblockPlus; |
| -extern const char* jsSources[]; |
| +extern std::string jsSources[]; |
| Filter::Filter(JsValuePtr value) |
| : JsValue(value) |
| { |
| if (!IsObject()) |
| throw std::runtime_error("JavaScript value is not an object"); |
| } |
| @@ -111,17 +112,17 @@ bool Subscription::IsUpdating() |
| bool Subscription::operator==(const Subscription& subscription) const |
| { |
| return GetProperty("url")->AsString() == subscription.GetProperty("url")->AsString(); |
| } |
| FilterEngine::FilterEngine(JsEnginePtr jsEngine) : jsEngine(jsEngine) |
| { |
| - for (int i = 0; jsSources[i] && jsSources[i + 1]; i += 2) |
| + for (int i = 0; !jsSources[i].empty(); i += 2) |
| jsEngine->Evaluate(jsSources[i + 1], jsSources[i]); |
| } |
| FilterPtr FilterEngine::GetFilter(const std::string& text) |
| { |
| JsValuePtr func = jsEngine->Evaluate("API.getFilterFromText"); |
| JsValueList params; |
| params.push_back(jsEngine->NewValue(text)); |