rem: if (!current || !operator) return false; 
add: if (!current) return false; if (!operator) return true; 
context: 	filterByAttribute: function(name, operator, value, nocash){		var elements = this.filter(function(el){			var current = Element.prototype.getProperty.call(el, name);			if (!current || !operator) return false;			switch(operator){				case '=': return (current == value);				case '*=': return (current.contains(value));				case '^=': return (current.substr(0, value.length) == value);				case '$=': return (current.substr(current.length - value.length) == value);				case '!=': return (current != value);				case '~=': return current.contains(value, ' ');			}			return false;		});		return (nocash) ? elements : $extend(elements, new Elements);	}
meta: 9980	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/9980/9c947c252090860c50e586f8519abc59eff46cc4/Dom.js/buggy/Native/Dom.js