| Index: src/plugin/AdblockPlusDomTraverser.cpp |
| =================================================================== |
| --- a/src/plugin/AdblockPlusDomTraverser.cpp |
| +++ b/src/plugin/AdblockPlusDomTraverser.cpp |
| @@ -12,12 +12,12 @@ |
| } |
| -bool CPluginDomTraverser::OnIFrame(IHTMLElement* pEl, const CString& url, CString& indent) |
| +bool CPluginDomTraverser::OnIFrame(IHTMLElement* pEl, const std::wstring& url, CString& indent) |
| { |
| CPluginClient* client = CPluginClient::GetInstance(); |
| // If src should be blocked, set style display:none on iframe |
| - bool isBlocked = client->ShouldBlock(to_wstring(url), CFilter::contentTypeSubdocument, m_domain); |
| + bool isBlocked = client->ShouldBlock(url, CFilter::contentTypeSubdocument, m_domain); |
| if (isBlocked) |
| { |
| HideElement(pEl, "iframe", url, true, indent); |
| @@ -40,7 +40,7 @@ |
| cache->m_isHidden = client->IsElementHidden(to_wstring(tag), pEl, m_domain, to_wstring(indent), m_tab->m_filter.get()); |
| if (cache->m_isHidden) |
| { |
| - HideElement(pEl, tag, "", false, indent); |
| + HideElement(pEl, tag, L"", false, indent); |
| return false; |
| } |
| @@ -51,11 +51,11 @@ |
| if (SUCCEEDED(pEl->getAttribute(L"src", 0, &vAttr)) && vAttr.vt == VT_BSTR && ::SysStringLen(vAttr.bstrVal) > 0) |
| { |
| - CString src = vAttr.bstrVal; |
| - CPluginClient::UnescapeUrl(src); |
| + std::wstring src(vAttr.bstrVal, SysStringLen(vAttr.bstrVal)); |
| + UnescapeUrl(src); |
| // If src should be blocked, set style display:none on image |
| - cache->m_isHidden = client->ShouldBlock(to_wstring(src), CFilter::contentTypeImage, m_domain); |
| + cache->m_isHidden = client->ShouldBlock(src, CFilter::contentTypeImage, m_domain); |
| if (cache->m_isHidden) |
| { |
| HideElement(pEl, "image", src, true, indent); |
| @@ -92,7 +92,7 @@ |
| { |
| if (cache->m_isHidden) |
| { |
| - HideElement(pEl, "object", src, true, indent); |
| + HideElement(pEl, "object", ToWstring(src), true, indent); |
| return false; |
| } |
| } |
| @@ -114,7 +114,7 @@ |
| } |
| -void CPluginDomTraverser::HideElement(IHTMLElement* pEl, const CString& type, const CString& url, bool isDebug, CString& indent) |
| +void CPluginDomTraverser::HideElement(IHTMLElement* pEl, const CString& type, const std::wstring& url, bool isDebug, CString& indent) |
| { |
| CComPtr<IHTMLStyle> pStyle; |
| @@ -131,12 +131,12 @@ |
| if (SUCCEEDED(pStyle->put_display(sbstrNone))) |
| { |
| - DEBUG_HIDE_EL(indent + L"HideEl::Hiding " + type + L" url:" + url) |
| + DEBUG_HIDE_EL(indent + L"HideEl::Hiding " + type + L" url:" + ToCString(url)) |
| #ifdef ENABLE_DEBUG_RESULT |
| if (isDebug) |
| { |
| - CPluginDebug::DebugResultHiding(type, url, "-"); |
| + CPluginDebug::DebugResultHiding(type, ToCString(url), "-"); |
| } |
| #endif // ENABLE_DEBUG_RESULT |
| } |