gecko-dev/dom/events
Masayuki Nakano f3fb0d1af8 Bug 1569613 - Add surrogate pair handling API to nsTextFragment r=hsivonen
We check surrogate pair at specific index in `nsTextFragement` in a lot of
places.  This requires boundary check of the index so that it can cause
security issue and crash reason with simple mistake, and also it steals
your time to understand the code what it does especially when it's a
part of an `if` condition.

Therefore, this patch adds new API to `nsTextFragment` and makes the all
surrogate pair handlers of `nsTextFragument` use new API.

Differential Revision: https://phabricator.services.mozilla.com/D39689

--HG--
extra : moz-landing-system : lando
2019-08-06 05:43:21 +00:00
..
crashtests Bug 1536353 - part 3: Make nsIDOMWindowUtils.dispatchDOMEventViaPresShell() dispatch only trusted event r=smaug 2019-03-26 10:10:22 +00:00
test Bug 1568035: Part 4 - Update test expections for Fission. r=mccr8 2019-07-24 13:06:57 -07:00
AnimationEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
AnimationEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
AsyncEventDispatcher.cpp Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug 2019-01-03 17:48:33 +01:00
AsyncEventDispatcher.h Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug 2019-01-03 17:48:33 +01:00
BeforeUnloadEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
BeforeUnloadEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
Clipboard.cpp Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika 2019-02-25 16:05:29 -06:00
Clipboard.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ClipboardEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ClipboardEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
CommandEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
CommandEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
CompositionEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
CompositionEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ConstructibleEventTarget.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ConstructibleEventTarget.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ContentEventHandler.cpp Bug 1569613 - Add surrogate pair handling API to nsTextFragment r=hsivonen 2019-08-06 05:43:21 +00:00
ContentEventHandler.h Bug 1533293 - part 3: Make editor and ContentEventHandler not use Selection::Extend() due to too slow r=m_kato 2019-03-26 10:09:47 +00:00
CustomEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
CustomEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
DataTransfer.cpp Bug 1570212 - Convert dom.events.dataTransfer.protected.enabled to a static pref. r=mccr8 2019-08-02 11:59:05 +00:00
DataTransfer.h Bug 998941 - part 2-3: Create new constructors of DataTransfer to set only plain text or nsITransferable r=smaug 2019-02-19 07:13:20 +00:00
DataTransferItem.cpp Bug 1536336. Change MOZ_CAN_RUN_SCRIPT analysis to allow const members of "this" in addition to stack refptrs. r=andi 2019-03-21 11:47:22 +00:00
DataTransferItem.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
DataTransferItemList.cpp Bug 998941 - part 2-3: Create new constructors of DataTransfer to set only plain text or nsITransferable r=smaug 2019-02-19 07:13:20 +00:00
DataTransferItemList.h Bug 998941 - part 2-3: Create new constructors of DataTransfer to set only plain text or nsITransferable r=smaug 2019-02-19 07:13:20 +00:00
DeviceMotionEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
DeviceMotionEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
DOMEventTargetHelper.cpp Bug 1455020 - Extend CheckInnerWindowCorrectness() to check the state of the worker, r=smaug 2019-04-01 16:46:46 +00:00
DOMEventTargetHelper.h Bug 1455020 - Extend CheckInnerWindowCorrectness() to check the state of the worker, r=smaug 2019-04-01 16:46:46 +00:00
DragEvent.cpp Bug 1259660 - Cleaned up WidgetMouseEventBase by renaming WidgetMouseEventBase::inputSource to WidgetMouseEventBase::mInputSource r=masayuki 2019-04-21 18:19:43 +00:00
DragEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
Event.cpp Bug 1557793 part 3. Change the signatures of various nsContentUtils localization methods to play nicer with the new stringbundle API. r=smaug 2019-06-08 21:26:12 +00:00
Event.h Bug 1543315 - part 9: Mark nsIPresShell::FlushPendingNotifications() as MOZ_CAN_RUN_SCRIPT r=smaug 2019-04-13 12:43:57 +00:00
EventDispatcher.cpp Bug 1543315 - part 15: Mark PresShell::ScrollFrameRectIntoView() as MOZ_CAN_RUN_SCRIPT r=smaug 2019-05-06 13:57:46 +00:00
EventDispatcher.h Bug 1543315 - part 15: Mark PresShell::ScrollFrameRectIntoView() as MOZ_CAN_RUN_SCRIPT r=smaug 2019-05-06 13:57:46 +00:00
EventListenerManager.cpp Bug 1563139 - Remove StaticPrefs.h. r=glandium 2019-07-26 01:10:23 +00:00
EventListenerManager.h Bug 1550937. Stop using [array] in nsIEventListenerService. r=smaug 2019-05-11 08:28:29 +00:00
EventListenerService.cpp Bug 1550937. Stop using [array] in nsIEventListenerService. r=smaug 2019-05-11 08:28:29 +00:00
EventListenerService.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
EventNameList.h Bug 1569474 - dispatch cut, copy and paste events to SVG graphics elements r=dholbert 2019-07-30 22:45:54 +00:00
EventStateManager.cpp Bug 1570182 - Fix cursor prefixed aliases to do the right thing. r=boris 2019-07-31 18:18:21 +00:00
EventStateManager.h Bug 1543439 - Part 1: Move special handling for MouseDown/Up event out of AutoHandlingUserInputStatePusher; r=masayuki 2019-05-29 07:48:16 +00:00
EventStates.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
EventTarget.cpp Bug 1353867 - Change WindowProxyHolder's native type to BrowsingContext. r=bzbarsky 2019-01-02 13:27:05 +00:00
EventTarget.h Bug 1529345 - Part 2: Add Gecko infrastructure for receiving notifications about debugger-related events. r=jimb,smaug 2019-06-17 04:36:29 +00:00
FocusEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
FocusEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ImageCaptureError.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ImageCaptureError.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
IMEContentObserver.cpp Bug 1569902 - part 5: Make IMEContentObserver stop observing attribute change r=smaug 2019-08-02 05:47:09 +00:00
IMEContentObserver.h Bug 1569902 - part 5: Make IMEContentObserver stop observing attribute change r=smaug 2019-08-02 05:47:09 +00:00
IMEStateManager.cpp Bug 1563139 - Remove StaticPrefs.h. r=glandium 2019-07-26 01:10:23 +00:00
IMEStateManager.h Bug 1549930 addendum - Notify widgets of IME blur on quit (on non-Android). r=masayuki 2019-06-17 04:51:29 +00:00
InputEvent.cpp Bug 1533989 - Make InputEvent.data and InputEvent.dataTransfer not expose clipboard data if user disables clipboard events r=smaug 2019-03-29 16:08:11 +00:00
InputEvent.h Bug 1533989 - Make InputEvent.data and InputEvent.dataTransfer not expose clipboard data if user disables clipboard events r=smaug 2019-03-29 16:08:11 +00:00
InputTypeList.h Bug 1532527 - Support "insertFromPasteAsQuotation" inputType value r=smaug 2019-03-05 14:35:43 +00:00
InternalMutationEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
JSEventHandler.cpp Bug 1561887 part 2. Fix cycle-collection skipping of JSEventHandler to work correctly. r=smaug 2019-07-09 17:04:59 +00:00
JSEventHandler.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
KeyboardEvent.cpp Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug 2019-01-03 17:48:33 +01:00
KeyboardEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
KeyNameList.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
MessageEvent.cpp Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika 2019-02-25 16:05:29 -06:00
MessageEvent.h Bug 1353867 - Change WindowProxyHolder's native type to BrowsingContext. r=bzbarsky 2019-01-02 13:27:05 +00:00
MouseEvent.cpp Bug 1178763, move UIEvent.pageX/pageY to MouseEvent, r=masayuki 2019-07-04 01:50:22 +00:00
MouseEvent.h Bug 1178763, move UIEvent.pageX/pageY to MouseEvent, r=masayuki 2019-07-04 01:50:22 +00:00
MouseScrollEvent.cpp Bug 1259660 - Cleaned up WidgetMouseEventBase by renaming WidgetMouseEventBase::inputSource to WidgetMouseEventBase::mInputSource r=masayuki 2019-04-21 18:19:43 +00:00
MouseScrollEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
moz.build Bug 1443683, support drag and drop in out of process frames; this is done by storing the drag information about the data to be dragged and visualization image in the event state manager instead of the BrowserParent and passing this information on to the drag service, r=nika 2019-05-14 11:04:38 -04:00
MutationEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
MutationEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
NotifyPaintEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
NotifyPaintEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
nsIEventListenerService.idl Bug 1550937. Stop using [array] in nsIEventListenerService. r=smaug 2019-05-11 08:28:29 +00:00
PaintRequest.cpp Bug 1523969 part 6 - Move method definition inline comments to new line in 'dom/'. r=nika 2019-02-25 16:05:29 -06:00
PaintRequest.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
PendingFullscreenEvent.h Bug 1517241 - Rename nsIDocument to mozilla::dom::Document. r=smaug 2019-01-03 17:48:33 +01:00
PhysicalKeyCodeNameList.h
PointerEvent.cpp Bug 1259660 - Cleaned up WidgetMouseEventBase by renaming WidgetMouseEventBase::inputSource to WidgetMouseEventBase::mInputSource r=masayuki 2019-04-21 18:19:43 +00:00
PointerEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
PointerEventHandler.cpp Bug 1563139 - Remove StaticPrefs.h. r=glandium 2019-07-26 01:10:23 +00:00
PointerEventHandler.h Bug 1490044 - Move all prefs used in WebIDL to StaticPrefs. r=bzbarsky 2019-06-13 09:00:59 +00:00
RemoteDragStartData.cpp Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-06-08 08:26:37 +00:00
RemoteDragStartData.h Bug 1443683, support drag and drop in out of process frames; this is done by storing the drag information about the data to be dragged and visualization image in the event state manager instead of the BrowserParent and passing this information on to the drag service, r=nika 2019-05-14 11:04:38 -04:00
ScrollAreaEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
ScrollAreaEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
SimpleGestureEvent.cpp Bug 1259660 - Cleaned up WidgetMouseEventBase by renaming WidgetMouseEventBase::inputSource to WidgetMouseEventBase::mInputSource r=masayuki 2019-04-21 18:19:43 +00:00
SimpleGestureEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
SpeechRecognitionError.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
SpeechRecognitionError.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
StorageEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
StorageEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TextClause.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TextClause.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TextComposition.cpp Bug 1563139 - Remove StaticPrefs.h. r=glandium 2019-07-26 01:10:23 +00:00
TextComposition.h Bug 1534395 - Rename TabParent to BrowserParent. r=nika 2019-04-09 16:38:15 -05:00
Touch.cpp Bug 1323400 - Part 1: Mark Touch::Equals as a const method; r=smaug 2019-02-15 16:28:35 +00:00
Touch.h Bug 1323400 - Part 1: Mark Touch::Equals as a const method; r=smaug 2019-02-15 16:28:35 +00:00
TouchEvent.cpp Bug 1563139 - Remove StaticPrefs.h. r=glandium 2019-07-26 01:10:23 +00:00
TouchEvent.h Bug 1412485, disable legacy touch APIs on desktop, r=masayuki 2019-03-04 13:35:53 +02:00
TransitionEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
TransitionEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
UIEvent.cpp Bug 1178763, move UIEvent.pageX/pageY to MouseEvent, r=masayuki 2019-07-04 01:50:22 +00:00
UIEvent.h Bug 1178763, move UIEvent.pageX/pageY to MouseEvent, r=masayuki 2019-07-04 01:50:22 +00:00
VirtualKeyCodeList.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
WheelEvent.cpp Bug 1259660 - Cleaned up WidgetMouseEventBase by renaming WidgetMouseEventBase::inputSource to WidgetMouseEventBase::mInputSource r=masayuki 2019-04-21 18:19:43 +00:00
WheelEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
WheelHandlingHelper.cpp Bug 1567237 - Only use scroll range to select scrollable frames to scroll to, don't use scrollbar visibility. r=tnikkel 2019-07-24 22:33:57 +00:00
WheelHandlingHelper.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
XULCommandEvent.cpp Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00
XULCommandEvent.h Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format 2018-11-30 11:46:48 +01:00