LibIDL: Fix use-after-free in GenerateWindowOrWorkerInterfaces

`lexical_bases` was storing `StringView`s into `ByteString`s returned
from `LexicalPath::string()` that might no longer exist.
This commit is contained in:
Jonne Ransijn 2024-11-15 23:43:04 +01:00 committed by Andreas Kling
commit c3783cf3bd
Notes: github-actions[bot] 2024-11-16 13:40:52 +00:00
4 changed files with 8 additions and 9 deletions

View file

@ -1250,7 +1250,7 @@ Interface& Parser::parse()
return interface;
}
Parser::Parser(ByteString filename, StringView contents, Vector<StringView> import_base_paths)
Parser::Parser(ByteString filename, StringView contents, Vector<ByteString> import_base_paths)
: import_base_paths(move(import_base_paths))
, filename(move(filename))
, input(contents)
@ -1258,7 +1258,7 @@ Parser::Parser(ByteString filename, StringView contents, Vector<StringView> impo
{
}
Parser::Parser(Parser* parent, ByteString filename, StringView contents, Vector<StringView> import_base_paths)
Parser::Parser(Parser* parent, ByteString filename, StringView contents, Vector<ByteString> import_base_paths)
: import_base_paths(move(import_base_paths))
, filename(move(filename))
, input(contents)