Loading content/xslt/src/xslt/txExecutionState.cpp +12 −23 Original line number Diff line number Diff line Loading @@ -16,25 +16,20 @@ const int32_t txExecutionState::kMaxRecursionDepth = 20000; nsresult txLoadedDocumentsHash::init(txXPathNode* aSourceDocument) void txLoadedDocumentsHash::init(txXPathNode* aSourceDocument) { mSourceDocument = aSourceDocument; nsAutoString baseURI; txXPathNodeUtils::getBaseURI(*mSourceDocument, baseURI); txLoadedDocumentEntry* entry = PutEntry(baseURI); if (!entry) { return NS_ERROR_FAILURE; } entry->mDocument = mSourceDocument; return NS_OK; PutEntry(baseURI)->mDocument = mSourceDocument; } txLoadedDocumentsHash::~txLoadedDocumentsHash() { if (mSourceDocument) { nsAutoString baseURI; txXPathNodeUtils::getBaseURI(*mSourceDocument, baseURI); Loading @@ -43,6 +38,7 @@ txLoadedDocumentsHash::~txLoadedDocumentsHash() delete entry->mDocument.forget(); } } } txExecutionState::txExecutionState(txStylesheet* aStylesheet, bool aDisableLoads) Loading Loading @@ -118,14 +114,7 @@ txExecutionState::init(const txXPathNode& aNode, mOutputHandler->startDocument(); // Set up loaded-documents-hash nsAutoPtr<txXPathNode> document(txXPathNodeUtils::getOwnerDocument(aNode)); NS_ENSURE_TRUE(document, NS_ERROR_FAILURE); rv = mLoadedDocuments.init(document); NS_ENSURE_SUCCESS(rv, rv); // loaded-documents-hash owns this now document.forget(); mLoadedDocuments.init(txXPathNodeUtils::getOwnerDocument(aNode)); // Init members rv = mKeyHash.init(); Loading content/xslt/src/xslt/txExecutionState.h +3 −2 Original line number Diff line number Diff line Loading @@ -57,11 +57,12 @@ class txLoadedDocumentsHash : public nsTHashtable<txLoadedDocumentEntry> { public: txLoadedDocumentsHash() : nsTHashtable<txLoadedDocumentEntry>(8) : nsTHashtable<txLoadedDocumentEntry>(8), mSourceDocument(nullptr) { } ~txLoadedDocumentsHash(); nsresult init(txXPathNode* aSourceDocument); void init(txXPathNode* aSourceDocument); private: friend class txExecutionState; Loading Loading
content/xslt/src/xslt/txExecutionState.cpp +12 −23 Original line number Diff line number Diff line Loading @@ -16,25 +16,20 @@ const int32_t txExecutionState::kMaxRecursionDepth = 20000; nsresult txLoadedDocumentsHash::init(txXPathNode* aSourceDocument) void txLoadedDocumentsHash::init(txXPathNode* aSourceDocument) { mSourceDocument = aSourceDocument; nsAutoString baseURI; txXPathNodeUtils::getBaseURI(*mSourceDocument, baseURI); txLoadedDocumentEntry* entry = PutEntry(baseURI); if (!entry) { return NS_ERROR_FAILURE; } entry->mDocument = mSourceDocument; return NS_OK; PutEntry(baseURI)->mDocument = mSourceDocument; } txLoadedDocumentsHash::~txLoadedDocumentsHash() { if (mSourceDocument) { nsAutoString baseURI; txXPathNodeUtils::getBaseURI(*mSourceDocument, baseURI); Loading @@ -43,6 +38,7 @@ txLoadedDocumentsHash::~txLoadedDocumentsHash() delete entry->mDocument.forget(); } } } txExecutionState::txExecutionState(txStylesheet* aStylesheet, bool aDisableLoads) Loading Loading @@ -118,14 +114,7 @@ txExecutionState::init(const txXPathNode& aNode, mOutputHandler->startDocument(); // Set up loaded-documents-hash nsAutoPtr<txXPathNode> document(txXPathNodeUtils::getOwnerDocument(aNode)); NS_ENSURE_TRUE(document, NS_ERROR_FAILURE); rv = mLoadedDocuments.init(document); NS_ENSURE_SUCCESS(rv, rv); // loaded-documents-hash owns this now document.forget(); mLoadedDocuments.init(txXPathNodeUtils::getOwnerDocument(aNode)); // Init members rv = mKeyHash.init(); Loading
content/xslt/src/xslt/txExecutionState.h +3 −2 Original line number Diff line number Diff line Loading @@ -57,11 +57,12 @@ class txLoadedDocumentsHash : public nsTHashtable<txLoadedDocumentEntry> { public: txLoadedDocumentsHash() : nsTHashtable<txLoadedDocumentEntry>(8) : nsTHashtable<txLoadedDocumentEntry>(8), mSourceDocument(nullptr) { } ~txLoadedDocumentsHash(); nsresult init(txXPathNode* aSourceDocument); void init(txXPathNode* aSourceDocument); private: friend class txExecutionState; Loading