diff options
-rw-r--r-- | dom/xslt/xslt/txMozillaXSLTProcessor.cpp | 8 |
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); |