Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(18)

Side by Side Diff: third_party/WebKit/Source/modules/notifications/Notification.cpp

Issue 2049003002: Wrap GCed raw pointer parameters of WTF::bind with Persistent (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 m_state = NotificationStateShowing; 169 m_state = NotificationStateShowing;
170 } 170 }
171 171
172 void Notification::close() 172 void Notification::close()
173 { 173 {
174 if (m_state != NotificationStateShowing) 174 if (m_state != NotificationStateShowing)
175 return; 175 return;
176 176
177 if (m_persistentId == kInvalidPersistentId) { 177 if (m_persistentId == kInvalidPersistentId) {
178 // Fire the close event asynchronously. 178 // Fire the close event asynchronously.
179 getExecutionContext()->postTask(BLINK_FROM_HERE, createSameThreadTask(&N otification::dispatchCloseEvent, this)); 179 getExecutionContext()->postTask(BLINK_FROM_HERE, createSameThreadTask(&N otification::dispatchCloseEvent, wrapPersistent(this)));
180 180
181 m_state = NotificationStateClosing; 181 m_state = NotificationStateClosing;
182 notificationManager()->close(this); 182 notificationManager()->close(this);
183 } else { 183 } else {
184 m_state = NotificationStateClosed; 184 m_state = NotificationStateClosed;
185 185
186 SecurityOrigin* origin = getExecutionContext()->getSecurityOrigin(); 186 SecurityOrigin* origin = getExecutionContext()->getSecurityOrigin();
187 DCHECK(origin); 187 DCHECK(origin);
188 188
189 notificationManager()->closePersistent(WebSecurityOrigin(origin), m_pers istentId); 189 notificationManager()->closePersistent(WebSecurityOrigin(origin), m_pers istentId);
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after
397 397
398 DEFINE_TRACE(Notification) 398 DEFINE_TRACE(Notification)
399 { 399 {
400 visitor->trace(m_prepareShowMethodRunner); 400 visitor->trace(m_prepareShowMethodRunner);
401 visitor->trace(m_loader); 401 visitor->trace(m_loader);
402 EventTargetWithInlineData::trace(visitor); 402 EventTargetWithInlineData::trace(visitor);
403 ActiveDOMObject::trace(visitor); 403 ActiveDOMObject::trace(visitor);
404 } 404 }
405 405
406 } // namespace blink 406 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/modules/nfc/NFC.cpp ('k') | third_party/WebKit/Source/modules/quota/StorageErrorCallback.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698