Callers of Notification::Dismiss() assume that the notification instance is not deleted after the call, but this was not the case for LibnotifyNotification: - Destroy() would get `this` deleted. - notify_notification_close() in portal environment triggers LibnotifyNotification::OnNotificationClosed(), and finally calls Destroy() This patch removes all Destroy() in Dismiss(), and adds a boolean to tell whether notify_notification_close() is running, to avoid crash under portal environment. Fixes #40461. Co-authored-by: trop[bot] <37223003+trop[bot]@users.noreply.github.com> Co-authored-by: taoky <me@taoky.moe> |
||
|---|---|---|
| .. | ||
| linux | ||
| mac | ||
| win | ||
| notification.cc | ||
| notification.h | ||
| notification_delegate.h | ||
| notification_presenter.cc | ||
| notification_presenter.h | ||
| platform_notification_service.cc | ||
| platform_notification_service.h | ||