Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: src/plugin/PluginFilter.cpp

Issue 4895405913407488: Issue #1234 - remove CString from declarations representing domains. (Closed)
Patch Set: Created Aug. 7, 2014, 7:46 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/plugin/PluginDomTraverserBase.h ('k') | src/plugin/PluginTabBase.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #include "PluginStdAfx.h" 1 #include "PluginStdAfx.h"
2 2
3 #include "PluginFilter.h" 3 #include "PluginFilter.h"
4 4
5 #if (defined PRODUCT_ADBLOCKPLUS) 5 #if (defined PRODUCT_ADBLOCKPLUS)
6 #include "PluginSettings.h" 6 #include "PluginSettings.h"
7 #include "PluginClient.h" 7 #include "PluginClient.h"
8 #include "PluginClientFactory.h" 8 #include "PluginClientFactory.h"
9 #endif 9 #endif
10 10
(...skipping 506 matching lines...) Expand 10 before | Expand all | Expand 10 after
517 517
518 CString classNames; 518 CString classNames;
519 CComBSTR bstrClassNames; 519 CComBSTR bstrClassNames;
520 if (SUCCEEDED(pEl->get_className(&bstrClassNames)) && bstrClassNames) 520 if (SUCCEEDED(pEl->get_className(&bstrClassNames)) && bstrClassNames)
521 { 521 {
522 classNames = bstrClassNames; 522 classNames = bstrClassNames;
523 } 523 }
524 524
525 CriticalSection::Lock filterEngineLock(s_criticalSectionFilterMap); 525 CriticalSection::Lock filterEngineLock(s_criticalSectionFilterMap);
526 { 526 {
527 CString domainTest = to_CString(domain);
528
529 // Search tag/id filters 527 // Search tag/id filters
530 if (!id.IsEmpty()) 528 if (!id.IsEmpty())
531 { 529 {
532 std::pair<TFilterElementHideTagsNamed::const_iterator, TFilterElementHideT agsNamed::const_iterator> idItEnum = 530 std::pair<TFilterElementHideTagsNamed::const_iterator, TFilterElementHideT agsNamed::const_iterator> idItEnum =
533 m_elementHideTagsId.equal_range(std::make_pair(tag, id)); 531 m_elementHideTagsId.equal_range(std::make_pair(tag, id));
534 for (TFilterElementHideTagsNamed::const_iterator idIt = idItEnum.first; id It != idItEnum.second; idIt ++) 532 for (TFilterElementHideTagsNamed::const_iterator idIt = idItEnum.first; id It != idItEnum.second; idIt ++)
535 { 533 {
536 if (idIt->second.IsMatchFilterElementHide(pEl)) 534 if (idIt->second.IsMatchFilterElementHide(pEl))
537 { 535 {
538 #ifdef ENABLE_DEBUG_RESULT 536 #ifdef ENABLE_DEBUG_RESULT
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
674 } 672 }
675 m_filterMapDefault[i].clear(); 673 m_filterMapDefault[i].clear();
676 } 674 }
677 675
678 m_elementHideTags.clear(); 676 m_elementHideTags.clear();
679 m_elementHideTagsId.clear(); 677 m_elementHideTagsId.clear();
680 m_elementHideTagsClass.clear(); 678 m_elementHideTagsClass.clear();
681 } 679 }
682 } 680 }
683 681
684 bool CPluginFilter::ShouldBlock(const std::wstring& src_wstring, int contentType , const std::wstring& domain_wstring, bool addDebug) const 682 bool CPluginFilter::ShouldBlock(const std::wstring& src_wstring, int contentType , const std::wstring& domain, bool addDebug) const
685 { 683 {
686 CString src = to_CString(src_wstring); 684 CString src = to_CString(src_wstring);
687 CString domain = to_CString(domain_wstring);
688 685
689 // We should not block the empty string, so all filtering does not make sense 686 // We should not block the empty string, so all filtering does not make sense
690 // Therefore we just return 687 // Therefore we just return
691 if (src.Trim().IsEmpty()) 688 if (src.Trim().IsEmpty())
692 { 689 {
693 return false; 690 return false;
694 } 691 }
695 692
696 CPluginSettings* settings = CPluginSettings::GetInstance(); 693 CPluginSettings* settings = CPluginSettings::GetInstance();
697 694
698 CString type; 695 CString type;
699 if (addDebug) 696 if (addDebug)
700 { 697 {
701 type = "OTHER"; 698 type = "OTHER";
702 699
703 std::map<int,CString>::const_iterator it = m_contentMapText.find(contentType ); 700 std::map<int,CString>::const_iterator it = m_contentMapText.find(contentType );
704 if (it != m_contentMapText.end()) 701 if (it != m_contentMapText.end())
705 { 702 {
706 type = it->second; 703 type = it->second;
707 } 704 }
708 } 705 }
709 706
710 CPluginClient* client = CPluginClient::GetInstance(); 707 CPluginClient* client = CPluginClient::GetInstance();
711 if (client->Matches(std::wstring(src), std::wstring(type), std::wstring(domain ))) 708 if (client->Matches(std::wstring(src), std::wstring(type), domain))
712 { 709 {
713 if (addDebug) 710 if (addDebug)
714 { 711 {
715 DEBUG_FILTER("Filter::ShouldBlock " + type + " YES") 712 DEBUG_FILTER("Filter::ShouldBlock " + type + " YES")
716 713
717 #ifdef ENABLE_DEBUG_RESULT 714 #ifdef ENABLE_DEBUG_RESULT
718 CPluginDebug::DebugResultBlocking(type, src, domain); 715 CPluginDebug::DebugResultBlocking(type, src, domain);
719 #endif 716 #endif
720 } 717 }
721 return true; 718 return true;
722 } 719 }
723 return false; 720 return false;
724 } 721 }
OLDNEW
« no previous file with comments | « src/plugin/PluginDomTraverserBase.h ('k') | src/plugin/PluginTabBase.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld