From ad03baad9d39d837c64d41700359aac4cc2946f5 Mon Sep 17 00:00:00 2001 From: "martijn.martijn%gmail.com" Date: Thu, 22 Jun 2006 19:07:33 +0000 Subject: [PATCH] Bug 342422 - Using createRange() and then adding that range to the selection with addRange throws exception, r+sr=bzbarsky git-svn-id: svn://10.0.0.236/trunk@200611 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/layout/generic/nsSelection.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/mozilla/layout/generic/nsSelection.cpp b/mozilla/layout/generic/nsSelection.cpp index ce9fac1234a..b088513b3fa 100644 --- a/mozilla/layout/generic/nsSelection.cpp +++ b/mozilla/layout/generic/nsSelection.cpp @@ -3765,13 +3765,16 @@ nsTypedSelection::GetTableSelectionType(nsIDOMRange* aRange, PRInt32* aTableSele // Not a single selected node if (startNode != endNode) return NS_OK; - nsCOMPtr content = do_QueryInterface(startNode); - if (!content) return NS_ERROR_FAILURE; + nsCOMPtr node = do_QueryInterface(startNode); + if (!node) return NS_ERROR_FAILURE; // if we simply cannot have children, return NS_OK as a non-failing, // non-completing case for table selection - if (!content->IsNodeOfType(nsINode::eELEMENT)) - return NS_OK; //got to be a text node, definitely not a table row/cell + if (!node->IsNodeOfType(nsINode::eELEMENT)) + return NS_OK; //definitely not a table row/cell + + nsCOMPtr content = do_QueryInterface(startNode); + NS_ASSERTION(content, "No content here?"); PRInt32 startOffset; PRInt32 endOffset;