diff --git a/mozilla/editor/base/nsHTMLEditRules.cpp b/mozilla/editor/base/nsHTMLEditRules.cpp
index 5fafac4fc78..35fd0e8f04f 100644
--- a/mozilla/editor/base/nsHTMLEditRules.cpp
+++ b/mozilla/editor/base/nsHTMLEditRules.cpp
@@ -3419,7 +3419,7 @@ nsHTMLEditRules::GetNodesForOperation(nsISupportsArray *inArrayOfRanges,
// first register ranges for special editor gravity
for (i = 0; i < (PRInt32)rangeCount; i++)
{
- isupports = (dont_AddRef)(inArrayOfRanges->ElementAt(i));
+ isupports = (dont_AddRef)(inArrayOfRanges->ElementAt(0));
opRange = do_QueryInterface(isupports);
nsRangeStore *item = new nsRangeStore();
if (!item) return NS_ERROR_NULL_POINTER;
@@ -3440,6 +3440,7 @@ nsHTMLEditRules::GetNodesForOperation(nsISupportsArray *inArrayOfRanges,
{
nsRangeStore *item = (nsRangeStore*)rangeItemArray.ElementAt(0);
if (!item) return NS_ERROR_NULL_POINTER;
+ rangeItemArray.RemoveElementAt(0);
mEditor->mRangeUpdater.DropRangeItem(item);
res = item->GetRange(&opRange);
if (NS_FAILED(res)) return res;
diff --git a/mozilla/editor/libeditor/html/nsHTMLEditRules.cpp b/mozilla/editor/libeditor/html/nsHTMLEditRules.cpp
index 5fafac4fc78..35fd0e8f04f 100644
--- a/mozilla/editor/libeditor/html/nsHTMLEditRules.cpp
+++ b/mozilla/editor/libeditor/html/nsHTMLEditRules.cpp
@@ -3419,7 +3419,7 @@ nsHTMLEditRules::GetNodesForOperation(nsISupportsArray *inArrayOfRanges,
// first register ranges for special editor gravity
for (i = 0; i < (PRInt32)rangeCount; i++)
{
- isupports = (dont_AddRef)(inArrayOfRanges->ElementAt(i));
+ isupports = (dont_AddRef)(inArrayOfRanges->ElementAt(0));
opRange = do_QueryInterface(isupports);
nsRangeStore *item = new nsRangeStore();
if (!item) return NS_ERROR_NULL_POINTER;
@@ -3440,6 +3440,7 @@ nsHTMLEditRules::GetNodesForOperation(nsISupportsArray *inArrayOfRanges,
{
nsRangeStore *item = (nsRangeStore*)rangeItemArray.ElementAt(0);
if (!item) return NS_ERROR_NULL_POINTER;
+ rangeItemArray.RemoveElementAt(0);
mEditor->mRangeUpdater.DropRangeItem(item);
res = item->GetRange(&opRange);
if (NS_FAILED(res)) return res;