diff --git a/mozilla/browser/base/content/metaData.js b/mozilla/browser/base/content/metaData.js index ca2517420ab..df3c021d5be 100644 --- a/mozilla/browser/base/content/metaData.js +++ b/mozilla/browser/base/content/metaData.js @@ -100,6 +100,11 @@ function showMetadataFor(elem) // Each of them could be at a different level in the tree, so they each // need their own boolean to tell us to stop looking. while (elem && elem.nodeType == Node.ELEMENT_NODE) { + htmllocalname = ""; + if (isHTMLElement(elem,"")) { + htmllocalname = elem.localName.toLowerCase(); + } + if (!onLink) checkForLink(elem, htmllocalname); if (!onInsDel) checkForInsDel(elem, htmllocalname); if (!onQuote) checkForQuote(elem, htmllocalname); @@ -108,11 +113,6 @@ function showMetadataFor(elem) if (!onLang) checkForLang(elem, htmllocalname); elem = elem.parentNode; - - htmllocalname = ""; - if (isHTMLElement(elem,"")) { - htmllocalname = elem.localName.toLowerCase(); - } } // Decide which sections to show @@ -245,15 +245,19 @@ function checkForLink(elem, htmllocalname) break; case "": case "_self": - if (elem.ownerDocument != elem.ownerDocument.defaultView._content.document) - setInfo("link-target", gMetadataBundle.getString("sameFrameText")); - else - setInfo("link-target", gMetadataBundle.getString("sameWindowText")); + if (elem.ownerDocument.defaultView) { + if (elem.ownerDocument != elem.ownerDocument.defaultView.content.document) + setInfo("link-target", gMetadataBundle.getString("sameFrameText")); + else + setInfo("link-target", gMetadataBundle.getString("sameWindowText")); + } else { + hideNode("link-target"); + } break; default: setInfo("link-target", "\"" + target + "\""); } - + onLink = true; } diff --git a/mozilla/xpfe/browser/resources/content/metadata.js b/mozilla/xpfe/browser/resources/content/metadata.js index 7d5bd251b70..a7bfce84436 100644 --- a/mozilla/xpfe/browser/resources/content/metadata.js +++ b/mozilla/xpfe/browser/resources/content/metadata.js @@ -105,6 +105,11 @@ function showMetadataFor(elem) // Each of them could be at a different level in the tree, so they each // need their own boolean to tell us to stop looking. while (elem && elem.nodeType == Node.ELEMENT_NODE) { + htmllocalname = ""; + if (isHTMLElement(elem,"")) { + htmllocalname = elem.localName.toLowerCase(); + } + if (!onLink) checkForLink(elem, htmllocalname); if (!onInsDel) checkForInsDel(elem, htmllocalname); if (!onQuote) checkForQuote(elem, htmllocalname); @@ -113,13 +118,8 @@ function showMetadataFor(elem) if (!onLang) checkForLang(elem, htmllocalname); elem = elem.parentNode; - - htmllocalname = ""; - if (isHTMLElement(elem,"")) { - htmllocalname = elem.localName.toLowerCase(); - } } - + // Decide which sections to show var onMisc = onTable || onTitle || onLang; if (!onMisc) hideNode("misc-sec"); @@ -252,10 +252,14 @@ function checkForLink(elem, htmllocalname) break; case "": case "_self": - if (elem.ownerDocument != elem.ownerDocument.defaultView.content.document) - setInfo("link-target", gMetadataBundle.getString("sameFrameText")); - else - setInfo("link-target", gMetadataBundle.getString("sameWindowText")); + if (elem.ownerDocument.defaultView) { + if (elem.ownerDocument != elem.ownerDocument.defaultView.content.document) + setInfo("link-target", gMetadataBundle.getString("sameFrameText")); + else + setInfo("link-target", gMetadataBundle.getString("sameWindowText")); + } else { + hideNode("link-target"); + } break; default: setInfo("link-target", "\"" + target + "\"");