rem: var attrib = node.getAttribute("type").toUpperCase(); 
add: var attrib = ""; var type = node.getAttribute("type");  if (type) attrib = type.toUpperCase();  
context:     isTargetATextBox : function ( node )    {      if (node.nodeType != Node.ELEMENT_NODE)        return false;      if (node.localName.toUpperCase() == "INPUT") {        var attrib = node.getAttribute("type").toUpperCase();        return( (attrib != "IMAGE") &&                (attrib != "PASSWORD") &&                (attrib != "CHECKBOX") &&                (attrib != "RADIO") &&                (attrib != "SUBMIT") &&                (attrib != "RESET") &&                (attrib != "FILE") &&                (attrib != "HIDDEN") &&                (attrib != "RESET") &&                (attrib != "BUTTON") );      } else  {        return(node.localName.toUpperCase() == "TEXTAREA");      }    },
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/0cf2d3abbb99fa4db77efa1bd6851ea898526435/nsContextMenu.js/clean/suite/common/nsContextMenu.js