nsCAutoString spec; NS_GetURLSpecFromFile(file, spec);
nsXFormsUploadElement::Blur(nsIDOMEvent *aEvent){  if (!mInput || !mBoundNode || !mModel ||      !nsXFormsUtils::EventHandlingAllowed(aEvent, mElement))    return NS_OK;  nsAutoString value;  mInput->GetValue(value);  // store the file as a property on the selected content node.  the submission  // code will read this value.  nsCOMPtr<nsIContent> content = do_QueryInterface(mBoundNode);  NS_ENSURE_STATE(content);  nsILocalFile *file = nsnull;  NS_NewLocalFile(value, PR_FALSE, &file);  NS_ENSURE_STATE(file);  content->SetProperty(nsXFormsAtoms::uploadFileProperty, file, ReleaseObject);  // update the instance data node.  this value is never used by the submission  // code.  instead, it exists so that the instance data will appear to be in-  // sync with what is actually submitted.  nsCAutoString spec;  NS_GetURLSpecFromFile(file, spec);  PRBool changed;  mModel->SetNodeValue(mBoundNode, NS_ConvertUTF8toUTF16(spec), &changed);  return NS_OK;}