rem: else handleLinkClick(event, linkNode.href, linkNode); 
add: else { handleLinkClick(event, wrapper.href, linkNode); }  
context:  function contentAreaClick(event, fieldNormalClicks)  {   var target = event.target;   var linkNode;   var local_name = target.localName;   if (local_name) {     local_name = local_name.toLowerCase();   }   switch (local_name) {     case "a":     case "area":     case "link":       if (target.hasAttribute("href"))          linkNode = target;       break;     default:       linkNode = findParentNode(event.originalTarget, "a");       // <a> cannot be nested.  So if we find an anchor without an       // href, there is no useful <a> around the target       if (linkNode && !linkNode.hasAttribute("href"))         linkNode = null;       break;   }   if (linkNode) {     if (event.button == 0 && !event.ctrlKey && !event.shiftKey &&         !event.altKey && !event.metaKey) {       // A Web panel's links should target the main content area.  Do this       // if no modifier keys are down and if there's no target or the target equals       // _main (the IE convention) or _content (the Mozilla convention).       // The only reason we field _main and _content here is for the markLinkVisited       // hack.       target = linkNode.getAttribute("target");       if (fieldNormalClicks &&            (!target || target == "_content" || target  == "_main"))          // IE uses _main, SeaMonkey uses _content, we support both       {         if (!linkNode.href) return true;         if (linkNode.getAttribute("onclick")) return true;         var postData = { };         var url = getShortcutOrURI(linkNode.href, postData);         if (!url)           return true;         markLinkVisited(linkNode.href, linkNode);         loadURI(url, null, postData.value);         event.preventDefault();         return false;       }       else if (linkNode.getAttribute("rel") == "sidebar") {         // This is the Opera convention for a special link that - when clicked - allows         // you to add a sidebar panel.  We support the Opera convention here.  The link's         // title attribute contains the title that should be used for the sidebar panel.         openDialog("chrome://browser/content/bookmarks/addBookmark2.xul", "",                    "centerscreen,chrome,dialog,resizable,dependent",                    linkNode.getAttribute("title"),                     linkNode.href, null, null, null, null, true);         event.preventDefault();         return false;       }       else if (target == "_search") {         // Used in WinIE as a way of transiently loading pages in a sidebar.  We         // mimic that WinIE functionality here and also load the page transiently.         openWebPanel(gNavigatorBundle.getString("webPanels"), linkNode.href);         event.preventDefault();         return false;       }     }     else       handleLinkClick(event, linkNode.href, linkNode);     return true;   } else {     // Try simple XLink     var href;     linkNode = target;     while (linkNode) {       if (linkNode.nodeType == Node.ELEMENT_NODE) {         href = linkNode.getAttributeNS("http://www.w3.org/1999/xlink", "href");         break;       }       linkNode = linkNode.parentNode;     }     if (href && href != "") {       href = makeURLAbsolute(target.baseURI,href);       handleLinkClick(event, href, null);       return true;     }   }   if (event.button == 1 &&       !findParentNode(event.originalTarget, "scrollbar") &&       gPrefService.getBoolPref("middlemouse.contentLoadURL")) {     middleMousePaste(event);   }   return true; }
meta: 8395	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/8395/8e43941de7aed68ab3600a0fc5e6335f445035b1/browser.js/buggy/browser/base/content/browser.js