-
82a8e504
by Jinoh Kang at 2025-02-22T20:51:40+01:00
ntdll: Sink module dependency registration towards the end of the function in find_forwarded_export().
-
6cf446ea
by Jinoh Kang at 2025-02-22T20:51:40+01:00
ntdll: Don't re-add a module dependency if it already exists.
Today, calling add_module_dependency() multiple times with the same
arguments results in duplicate edges.
Duplicate edges are harmless, but bloats memory usage. The number of
duplicate edges does not affect the dependency graph; the graph is
determined by the set of unique edges.
Consciously avoid duplicates by checking for them in
add_module_dependency_after(). This allows us to generate a unique
dependency edge for all imports of export forwarders that belong to the
same DLL.
-
41013b04
by Jinoh Kang at 2025-02-22T20:51:40+01:00
ntdll: Register module dependency for export forwarders regardless of whether the dependency is already loaded.
Prepare for generalization to imports from DLLs.
Calling add_module_dependency() multiple times for the same dependency
edge no longer bloats memory usage.
-
a11721fa
by Jinoh Kang at 2025-02-22T20:51:40+01:00
ntdll: Properly track refcount on static imports of export forwarders.
Today this is only done for the the main EXE. Generalize this to DLLs
as well.
-
f7046002
by Jinoh Kang at 2025-02-22T20:51:40+01:00
ntdll: Eagerly call process_attach() on dynamic imports of export forwarders.
-
e608f6e0
by Jinoh Kang at 2025-02-22T20:51:40+01:00
ntdll: Explicitly ignore dynamic (GetProcAddress) importers as relay/snoop user module.
-
698bee6c
by Jinoh Kang at 2025-02-22T20:51:40+01:00
ntdll: Properly track refcount on dynamic imports of export forwarders.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52094
-
fa9f9123
by Jinoh Kang at 2025-02-22T20:51:40+01:00
ntdll: Remove superflous NULL check for importer.