Bug 1402196 - Part 1. Don't add null range to aArrayOfRanges. r?masayuki draft
authorMakoto Kato <m_kato@ga2.so-net.ne.jp>
Mon, 23 Oct 2017 12:22:45 +0900
changeset 684543 c72e6d803b7e0cbe0c8d55aa95f87ab1bc6b5da1
parent 684511 ce1a86d3b4db161c95d1147676bbed839d7a4732
child 684544 6da88b049cbde57c56613cd0bd83126a297e21e1
push id85637
push userbmo:m_kato@ga2.so-net.ne.jp
push dateMon, 23 Oct 2017 03:24:57 +0000
reviewersmasayuki
bugs1402196
milestone58.0a1
Bug 1402196 - Part 1. Don't add null range to aArrayOfRanges. r?masayuki RangeItem::GetRange can return null, so we shouldn't add null range to aArrayOfRanges. MozReview-Commit-ID: Ci5VHeqE8km
editor/libeditor/HTMLEditRules.cpp
--- a/editor/libeditor/HTMLEditRules.cpp
+++ b/editor/libeditor/HTMLEditRules.cpp
@@ -5888,17 +5888,20 @@ HTMLEditRules::GetNodesForOperation(
       rv = BustUpInlinesAtRangeEndpoints(*item);
       if (NS_FAILED(rv)) {
         break;
       }
     }
     // Then unregister the ranges
     for (auto& item : rangeItemArray) {
       htmlEditor->mRangeUpdater.DropRangeItem(item);
-      aArrayOfRanges.AppendElement(item->GetRange());
+      RefPtr<nsRange> range = item->GetRange();
+      if (range) {
+        aArrayOfRanges.AppendElement(range);
+      }
     }
     NS_ENSURE_SUCCESS(rv, rv);
   }
   // Gather up a list of all the nodes
   for (auto& range : aArrayOfRanges) {
     DOMSubtreeIterator iter;
     nsresult rv = iter.Init(*range);
     NS_ENSURE_SUCCESS(rv, rv);