Fixed a crasher by avoiding an extra release of the minivariant. Also fixed a bug in soap encoding. b=197872, r=rayw@netscape.com, sr=jst@netscape.com

git-svn-id: svn://10.0.0.236/trunk@139952 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
harishd%netscape.com 2003-03-21 19:14:29 +00:00
parent 1824213c86
commit ca619d387e
4 changed files with 30 additions and 2 deletions

View File

@ -228,6 +228,10 @@ WSPProxy::CallMethod(PRUint16 methodIndex,
return rv;
}
nsAutoString soapAction;
operationBinding->GetSoapAction(soapAction);
call->SetActionURI(soapAction);
PRUint16 style;
operationBinding->GetStyle(&style);
// If the style is RPC, find the method name and target object URI.
@ -676,7 +680,9 @@ WSPProxy::XPTCMiniVariantToVariant(uint8 aTypeTag, nsXPTCMiniVariant aResult,
return rv;
}
var->SetAsInterface(NS_GET_IID(nsIPropertyBag), propBag);
NS_RELEASE(instance);
// AFAICT, there is no need to release the instance here
// because the caller who owns the object should be releasing it.
// NS_RELEASE(instance);
}
else {
var->SetAsEmpty();

View File

@ -532,6 +532,14 @@ nsresult
*i2 = 's';
i2--;
*i2 = 'n';
// Declare the fabricated prefix
if (aScope) {
tstr.Assign(nsSOAPUtils::kXMLNamespacePrefix);
tstr.Append(aPrefix);
rc = aScope->SetAttributeNS(nsSOAPUtils::kXMLNamespaceNamespaceURI,
tstr, externalURI);
}
return NS_OK;
}

View File

@ -228,6 +228,10 @@ WSPProxy::CallMethod(PRUint16 methodIndex,
return rv;
}
nsAutoString soapAction;
operationBinding->GetSoapAction(soapAction);
call->SetActionURI(soapAction);
PRUint16 style;
operationBinding->GetStyle(&style);
// If the style is RPC, find the method name and target object URI.
@ -676,7 +680,9 @@ WSPProxy::XPTCMiniVariantToVariant(uint8 aTypeTag, nsXPTCMiniVariant aResult,
return rv;
}
var->SetAsInterface(NS_GET_IID(nsIPropertyBag), propBag);
NS_RELEASE(instance);
// AFAICT, there is no need to release the instance here
// because the caller who owns the object should be releasing it.
// NS_RELEASE(instance);
}
else {
var->SetAsEmpty();

View File

@ -532,6 +532,14 @@ nsresult
*i2 = 's';
i2--;
*i2 = 'n';
// Declare the fabricated prefix
if (aScope) {
tstr.Assign(nsSOAPUtils::kXMLNamespacePrefix);
tstr.Append(aPrefix);
rc = aScope->SetAttributeNS(nsSOAPUtils::kXMLNamespaceNamespaceURI,
tstr, externalURI);
}
return NS_OK;
}