mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-18 15:55:36 +00:00
0f69748e1a
With the previous patch, 2 bugs become visible. One is a `MOZ_ASSERT` in `WhiteSpaceVisibilityKeeper::MakeSureToKeepVisibleStateOfWhiteSpacesAroundDeletingRange()` is wrong. When `TextFragmentData::GetReplaceRangeDataAtEndOfDeletionRange()` returns a replace range, it may set the start to inclusive next character of end to delete. So, start of replace range may start after end to delete when container of end to delete is not a text node and its next editable char point is an ASCII white-space. Therefore, this patch rewrite it with `MOZ_ASSERT_IF` and `EditorDOMPoint::IsInTextNode()`. The other is `TextFragmentData::GetReplaceRangeDataAtEndOfDeletionRange()` and `TextFragmentData::GetReplaceRangeDataAtStartOfDeletionRange()` may call `TextFragmentData::GetFirstASCIIWhiteSpacePointCollapsedTo()` and `TextFragmentData::GetEndOfCollapsibleASCIIWhiteSpaces()` with a point in preformatted text node. Therefore, this patch adds the check into them. Depends on D84323 Differential Revision: https://phabricator.services.mozilla.com/D84943 |
||
---|---|---|
.. | ||
composer | ||
libeditor | ||
reftests | ||
spellchecker | ||
txmgr | ||
AsyncSpellCheckTestHelper.jsm | ||
moz.build | ||
nsIDocumentStateListener.idl | ||
nsIEditActionListener.idl | ||
nsIEditor.idl | ||
nsIEditorMailSupport.idl | ||
nsIEditorObserver.idl | ||
nsIEditorSpellCheck.idl | ||
nsIHTMLAbsPosEditor.idl | ||
nsIHTMLEditor.idl | ||
nsIHTMLInlineTableEditor.idl | ||
nsIHTMLObjectResizer.idl | ||
nsITableEditor.idl |