add: if (level > MAX_LEVEL) { try { log("Recursive reference to resource: " + resource.Value + "."); } catch (e) { log("Recursive reference to unknown resource."); } return; } 
context: function doFindOnDatasource(resultsDS, sourceDS, resource, level) {  // find all SUBHEADING children of current resource.  var targets = sourceDS.GetTargets(resource, NC_SUBHEADINGS, true);  while (targets.hasMoreElements()) {      var target = targets.getNext();      target = target.QueryInterface(Components.interfaces.nsIRDFResource);        // The first child of a rdf:subheading should (must) be a rdf:seq.        // Should we test for a SEQ here?    doFindOnSeq(resultsDS, sourceDS, target, level+1);         }  }
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/abdc5f4ddb35a8049e49087b3d6409882de89ccf/help.js/clean/extensions/help/resources/content/help.js