| 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 | 
| } | 
|  |