From c843e98a5f34474f87d7e739dde1df78f5b80b87 Mon Sep 17 00:00:00 2001 From: "bryner%brianryner.com" Date: Fri, 1 Oct 2004 18:56:38 +0000 Subject: [PATCH] Don't crash if the referenced bind element isn't in the document. git-svn-id: svn://10.0.0.236/branches/FORMS_20040722_BRANCH@163098 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/extensions/xforms/nsXFormsControl.cpp | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/mozilla/extensions/xforms/nsXFormsControl.cpp b/mozilla/extensions/xforms/nsXFormsControl.cpp index 420f5d13c08..2bf9474d4c3 100644 --- a/mozilla/extensions/xforms/nsXFormsControl.cpp +++ b/mozilla/extensions/xforms/nsXFormsControl.cpp @@ -79,12 +79,14 @@ nsXFormsControl::GetModelAndBind(nsIDOMElement **aBindElement) nsCOMPtr bindContent = do_QueryInterface(*aBindElement); nsIContent *modelContent = bindContent; - while ((modelContent = modelContent->GetParent())) { - nsINodeInfo *nodeInfo = modelContent->GetNodeInfo(); - if (nodeInfo && - nodeInfo->NamespaceEquals(NS_LITERAL_STRING("http://www.w3.org/2002/xforms")) && - nodeInfo->NameAtom() == nsXFormsAtoms::model) - break; + if (modelContent) { + while ((modelContent = modelContent->GetParent())) { + nsINodeInfo *nodeInfo = modelContent->GetNodeInfo(); + if (nodeInfo && + nodeInfo->NamespaceEquals(NS_LITERAL_STRING("http://www.w3.org/2002/xforms")) && + nodeInfo->NameAtom() == nsXFormsAtoms::model) + break; + } } modelWrapper = do_QueryInterface(modelContent);