nsresult txCheckParam::execute(txExecutionState& aEs) { nsresult rv = NS_OK; if (aEs.mTemplateParams) { RefPtr<txAExprResult> exprRes; aEs.mTemplateParams->getVariable(mName, getter_AddRefs(exprRes)); if (exprRes) { rv = aEs.bindVariable(mName, exprRes); NS_ENSURE_SUCCESS(rv, rv); aEs.gotoInstruction(mBailTarget); } } return NS_OK; }
nsresult txSetVariable::execute(txExecutionState& aEs) { nsresult rv = NS_OK; RefPtr<txAExprResult> exprRes; if (mValue) { rv = mValue->evaluate(aEs.getEvalContext(), getter_AddRefs(exprRes)); NS_ENSURE_SUCCESS(rv, rv); } else { nsAutoPtr<txRtfHandler> rtfHandler( static_cast<txRtfHandler*>(aEs.popResultHandler())); rv = rtfHandler->getAsRTF(getter_AddRefs(exprRes)); NS_ENSURE_SUCCESS(rv, rv); } return aEs.bindVariable(mName, exprRes); }