Macro
Returns return-value if NS_FAILED(nsresult) evaluates to true, and shows a warning on stderr in that case.
NS_ENSURE_SUCCESS(nsresult, return-value);
nsresult mozMyClass::MozStringMucking()
{
nsresult rv = NS_CStringCopy(mDestString, mSrcString);
NS_ENSURE_SUCCESS(rv, rv);
// this is the same as doing:
nsresult rv = NS_CStringCopy(mDestString, mSrcString);
if (NS_FAILED(rv))
return rv;
return NS_OK;
}