about summary refs log tree commit diff stats
path: root/src/tools/env.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/env.c')
-rw-r--r--src/tools/env.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/tools/env.c b/src/tools/env.c
index c21a3687..16c4b194 100644
--- a/src/tools/env.c
+++ b/src/tools/env.c
@@ -13,6 +13,8 @@
 #include "fileutils.h"
 #include "box64context.h"
 #include "rbtree.h"
+#include "wine_tools.h"
+#include "pe_tools.h"
 
 box64env_t box64env = { 0 };
 
@@ -614,6 +616,10 @@ void RecordEnvMappings(uintptr_t addr, size_t length, int fd)
     mapping_t* mapping = NULL;
     khint_t k = kh_get(mapping_entry, mapping_entries, lowercase_filename);
     if(k == kh_end(mapping_entries)) {
+        // First time we see this file
+        if (box64_wine && BOX64ENV(unityplayer)) DetectUnityPlayer(lowercase_filename+1);
+        if (box64_wine && BOX64ENV(dynarec_volatile_metadata)) ParseVolatileMetadata(fullname, (void*)addr);
+
         mapping = box_calloc(1, sizeof(mapping_t));
         mapping->filename = box_strdup(lowercase_filename);
         mapping->fullname = box_strdup(fullname);