]> git.sesse.net Git - pistorm/commitdiff
Do not free MAPTYPE_RAM_NOALLOC mapped data
authorbeeanyew <beeanyew@gmail.com>
Wed, 16 Jun 2021 18:36:46 +0000 (20:36 +0200)
committerRune Holm <rune.holm@gmail.com>
Fri, 18 Jun 2021 21:01:17 +0000 (22:01 +0100)
config_file/config_file.c

index d60b9b7844a0b4f681c895a3aed176012a34fe09..12ba4b4e99955384a09dc5f833f954bc1ec14c63 100644 (file)
@@ -306,7 +306,9 @@ void free_config_file(struct emulator_config *cfg) {
 
   for (int i = 0; i < MAX_NUM_MAPPED_ITEMS; i++) {
     if (cfg->map_data[i]) {
-      free(cfg->map_data[i]);
+      if (cfg->map_type[i] != MAPTYPE_RAM_NOALLOC) {
+        free(cfg->map_data[i]);
+      }
       cfg->map_data[i] = NULL;
     }
     if (cfg->map_id[i]) {
@@ -314,6 +316,7 @@ void free_config_file(struct emulator_config *cfg) {
       cfg->map_id[i] = NULL;
     }
   }
+
   if (cfg->mouse_file) {
     free(cfg->mouse_file);
     cfg->mouse_file = NULL;