PRBool dummy; return GetBindingInternal(aBoundElement, aURI, PR_FALSE, &dummy, aResult);
*aResult = nsnull;  if (aURLStr.IsEmpty()) return NS_ERROR_FAILURE;  nsCOMPtr<nsIURL> uri; nsComponentManager::CreateInstance("component: nsnull, NS_GET_IID(nsIURL), getter_AddRefs(uri)); uri->SetSpec(aURLStr);   nsXPIDLCString ref; uri->GetRef(getter_Copies(ref)); uri->SetRef("");  nsCOMPtr<nsIDocument> doc; GetBindingDocument(uri, getter_AddRefs(doc)); if (!doc) return NS_ERROR_FAILURE;     nsCOMPtr<nsIContent> root = getter_AddRefs(doc->GetRootContent()); if (!root) return NS_ERROR_FAILURE;  nsAutoString bindingName(ref);  PRInt32 count; root->ChildCount(count); for (PRInt32 i = 0; i < count; i++) { nsCOMPtr<nsIContent> child; root->ChildAt(i, *getter_AddRefs(child));  nsAutoString value; child->GetAttribute(kNameSpaceID_None, nsHTMLAtoms::name, value);   if ((bindingName.IsEmpty()) || (bindingName == value)) {  NS_NewXBLBinding(aResult);   (*aResult)->SetBindingElement(child);   child->GetAttribute(kNameSpaceID_None, kExtendsAtom, value); if (!value.IsEmpty()) {  nsCOMPtr<nsIAtom> tag; (*aResult)->GetBaseTag(getter_AddRefs(tag)); if (!tag) {  nsCOMPtr<nsIXBLBinding> baseBinding; nsCAutoString url = value; GetBinding(url, getter_AddRefs(baseBinding)); if (!baseBinding) return NS_OK; (*aResult)->SetBaseBinding(baseBinding); } }  break; } }  return NS_OK;
nsresult nsXBLService::GetBinding(nsIContent* aBoundElement,                                   nsIURI* aURI,                                   nsIXBLBinding** aResult){  PRBool dummy;  return GetBindingInternal(aBoundElement, aURI, PR_FALSE, &dummy, aResult);}