| Index: ui/base/events/event_target.cc
|
| diff --git a/ui/base/events/event_target.cc b/ui/base/events/event_target.cc
|
| index c05856e1a803d55993f6b68d4945ebafa9cdebc3..a11ec5b7938bf4cb0260abc5196b951b4df059c5 100644
|
| --- a/ui/base/events/event_target.cc
|
| +++ b/ui/base/events/event_target.cc
|
| @@ -23,8 +23,12 @@ void EventTarget::AddPreTargetHandler(EventHandler* handler) {
|
| }
|
|
|
| void EventTarget::RemovePreTargetHandler(EventHandler* handler) {
|
| - pre_target_list_.erase(std::remove(pre_target_list_.begin(),
|
| - pre_target_list_.end(), handler));
|
| + EventHandlerList::iterator find =
|
| + std::find(pre_target_list_.begin(),
|
| + pre_target_list_.end(),
|
| + handler);
|
| + if (find != pre_target_list_.end())
|
| + pre_target_list_.erase(find);
|
| }
|
|
|
| void EventTarget::AddPostTargetHandler(EventHandler* handler) {
|
| @@ -32,8 +36,12 @@ void EventTarget::AddPostTargetHandler(EventHandler* handler) {
|
| }
|
|
|
| void EventTarget::RemovePostTargetHandler(EventHandler* handler) {
|
| - post_target_list_.erase(std::remove(post_target_list_.begin(),
|
| - post_target_list_.end(), handler));
|
| + EventHandlerList::iterator find =
|
| + std::find(post_target_list_.begin(),
|
| + post_target_list_.end(),
|
| + handler);
|
| + if (find != post_target_list_.end())
|
| + post_target_list_.erase(find);
|
| }
|
|
|
| void EventTarget::GetPreTargetHandlers(EventHandlerList* list) {
|
|
|