| Index: lib/filterValidation.js | 
| =================================================================== | 
| --- a/lib/filterValidation.js | 
| +++ b/lib/filterValidation.js | 
| @@ -14,17 +14,18 @@ | 
| * You should have received a copy of the GNU General Public License | 
| * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 
| */ | 
|  | 
| /** @module filterValidation */ | 
|  | 
| "use strict"; | 
|  | 
| -const {Filter, InvalidFilter, ElemHideBase} = require("filterClasses"); | 
| +const {Filter, InvalidFilter, ElemHideBase, ElemHideEmulationFilter} = | 
| +      require("filterClasses"); | 
| const {Utils} = require("utils"); | 
|  | 
| /** | 
| * An error returned by | 
| * {@link module:filterValidation.parseFilter parseFilter()} or | 
| * {@link module:filterValidation.parseFilters parseFilters()} | 
| * indicating that a given filter cannot be parsed, | 
| * contains an invalid CSS selector or is a filter list header. | 
| @@ -137,17 +138,19 @@ | 
|  | 
| filter = Filter.fromText(text); | 
|  | 
| if (filter instanceof InvalidFilter) | 
| { | 
| return {error: new FilterParsingError("invalid-filter", | 
| {reason: filter.reason})}; | 
| } | 
| -    if (filter instanceof ElemHideBase && !isValidCSSSelector(filter.selector)) | 
| +    if (filter instanceof ElemHideBase && | 
| +        !(filter instanceof ElemHideEmulationFilter) && | 
| +        !isValidCSSSelector(filter.selector)) | 
| { | 
| return {error: new FilterParsingError("invalid-css-selector", | 
| {selector: filter.selector})}; | 
| } | 
| } | 
|  | 
| return {filter}; | 
| }; | 
|  |