summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--dom/xslt/xslt/txMozillaXSLTProcessor.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/dom/xslt/xslt/txMozillaXSLTProcessor.cpp b/dom/xslt/xslt/txMozillaXSLTProcessor.cpp
index 59cd09bd6a..0df80716c1 100644
--- a/dom/xslt/xslt/txMozillaXSLTProcessor.cpp
+++ b/dom/xslt/xslt/txMozillaXSLTProcessor.cpp
@@ -250,7 +250,13 @@ public:
}
nsresult getValue(txAExprResult** aValue)
{
- NS_ASSERTION(mTxValue, "variablevalue is null");
+ if (!mTxValue) {
+ // XXX: This should not happen as we normally convert values before
+ // we call this function. For corner cases where this isn't true, we
+ // perform the conversion here.
+ nsresult rv = Convert(mValue, getter_AddRefs(mTxValue));
+ NS_ENSURE_SUCCESS(rv, rv);
+ }
*aValue = mTxValue;
NS_ADDREF(*aValue);