mirror of
https://github.com/LadybirdBrowser/ladybird
synced 2026-04-26 01:35:08 +02:00
LibWeb: Make PolicyContainer GC allocated
This is required to store Content Security Policies, as their Directives are implemented as subclasses with overridden virtual functions. Thus, they cannot be stored as generic Directive classes, as it'll lose the ability to call overridden functions when they are copied.
This commit is contained in:
Notes:
github-actions[bot]
2025-02-21 12:55:13 +00:00
Author: https://github.com/Lubrsi Commit: https://github.com/LadybirdBrowser/ladybird/commit/cae0ab2139a Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/3627 Reviewed-by: https://github.com/AtkinsSJ ✅
@@ -60,7 +60,7 @@ public:
|
||||
Applied,
|
||||
};
|
||||
|
||||
HistoryStepResult apply_the_traverse_history_step(int, Optional<SourceSnapshotParams>, GC::Ptr<Navigable>, UserNavigationInvolvement);
|
||||
HistoryStepResult apply_the_traverse_history_step(int, GC::Ptr<SourceSnapshotParams>, GC::Ptr<Navigable>, UserNavigationInvolvement);
|
||||
HistoryStepResult apply_the_reload_history_step(UserNavigationInvolvement);
|
||||
enum class SynchronousNavigation : bool {
|
||||
Yes,
|
||||
@@ -76,7 +76,7 @@ public:
|
||||
|
||||
Vector<int> get_all_used_history_steps() const;
|
||||
void clear_the_forward_session_history();
|
||||
void traverse_the_history_by_delta(int delta, Optional<DOM::Document&> source_document = {});
|
||||
void traverse_the_history_by_delta(int delta, GC::Ptr<DOM::Document> source_document = {});
|
||||
|
||||
void close_top_level_traversable();
|
||||
void definitely_close_top_level_traversable();
|
||||
@@ -125,7 +125,7 @@ private:
|
||||
HistoryStepResult apply_the_history_step(
|
||||
int step,
|
||||
bool check_for_cancelation,
|
||||
Optional<SourceSnapshotParams>,
|
||||
GC::Ptr<SourceSnapshotParams>,
|
||||
GC::Ptr<Navigable> initiator_to_check,
|
||||
UserNavigationInvolvement user_involvement,
|
||||
Optional<Bindings::NavigationType> navigation_type,
|
||||
|
||||
Reference in New Issue
Block a user