summaryrefslogtreecommitdiff
path: root/chromium/components/permissions/permission_request.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/components/permissions/permission_request.h')
-rw-r--r--chromium/components/permissions/permission_request.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/chromium/components/permissions/permission_request.h b/chromium/components/permissions/permission_request.h
index d688ff5dacf..d983e42e9f7 100644
--- a/chromium/components/permissions/permission_request.h
+++ b/chromium/components/permissions/permission_request.h
@@ -8,6 +8,7 @@
#include <string>
#include "base/callback.h"
+#include "base/memory/weak_ptr.h"
#include "build/build_config.h"
#include "components/content_settings/core/common/content_settings.h"
#include "components/content_settings/core/common/content_settings_types.h"
@@ -75,6 +76,9 @@ class PermissionRequest {
// need to be shown in the UI.
virtual bool IsDuplicateOf(PermissionRequest* other_request) const;
+ // Returns a weak pointer to this instance.
+ base::WeakPtr<PermissionRequest> GetWeakPtr();
+
#if BUILDFLAG(IS_ANDROID)
// Returns prompt text appropriate for displaying in an Android dialog.
virtual std::u16string GetDialogMessageText() const;
@@ -150,6 +154,8 @@ class PermissionRequest {
// Called when the request is no longer in use so it can be deleted by the
// caller.
base::OnceClosure delete_callback_;
+
+ base::WeakPtrFactory<PermissionRequest> weak_factory_{this};
};
} // namespace permissions