rem: var parsed; 
add: var parsed, clsRx = new RegExp("(\\s|^)" + styleSet.name + "(\\s|$)"); 
context: 	function highlightCode(styleSet) {		// clear rules array		var parsed;		rules.length = 0;				// get stylable elements by filtering out all code elements without the correct className			var stylableEls = codeEls.filter(function(item) {return (item.className.indexOf(styleSet.name)>=0)});				// add style rules to parser		for (var className in styleSet.rules) addRule(className, styleSet.rules[className]);							// replace for all elements		for (var i = 0; i < stylableEls.length; i++) {			// EVIL hack to fix IE whitespace badness if it's inside a <pre>			if (/MSIE/.test(navigator.appVersion) && stylableEls[i].parentNode.nodeName == 'PRE') {				stylableEls[i] = stylableEls[i].parentNode;								parsed = stylableEls[i].innerHTML.replace(/(<code[^>]*>)([^<]*)<\/code>/i, function() {					return arguments[1] + parse(arguments[2], styleSet.ignoreCase) + "</code>"				});				parsed = parsed.replace(/\n( *)/g, function() { 					var spaces = "";					for (var i = 0; i < arguments[1].length; i++) spaces+= "&nbsp;";					return "\n" + spaces;  				});				parsed = parsed.replace(/\t/g, "&nbsp;&nbsp;&nbsp;&nbsp;");				parsed = parsed.replace(/\n(<\/\w+>)?/g, "<br />$1").replace(/<br \/>[\n\r\s]*<br \/>/g, "<p><br></p>");							} else parsed = parse(stylableEls[i].innerHTML, styleSet.ignoreCase);						stylableEls[i].innerHTML = parsed;		}	}
meta: 9327	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9327/770caef9a7a77eae247dbf48ac6324bf1ebc82d3/code_highlighter.js/buggy/code_highlighter.js