home · contact · privacy
Moved freeing of winmeta into windows library.
authorChristian Heller <c.heller@plomlompom.de>
Sat, 31 Aug 2013 01:53:28 +0000 (03:53 +0200)
committerChristian Heller <c.heller@plomlompom.de>
Sat, 31 Aug 2013 01:53:28 +0000 (03:53 +0200)
src/rexit.c
src/windows.c
src/windows.h

index 8b32d4ad760aa3dacb1308c7b9f0938ff553ee38..5640d89fc6065b5033fdf9431431552ab066e96c 100644 (file)
@@ -10,7 +10,7 @@
 #include "map.h" /* for Map struct */
 #include "keybindings.h" /* for KeysWinData, KeyBinding structs */
 #include "command_db.h" /* for free_command_db() */
-#include "windows.h" /* for Win struct, free_win() */
+#include "windows.h" /* for Win struct, free_win(), free_winmeta() */
 #include "map_objects.h" /* for free_item_defs(), free_monster_defs() */
 
 
@@ -67,8 +67,7 @@ static void cleanup(struct World * world)
     }
     if (cleanup_flags & CLEANUP_WIN_META)
     {
-        delwin(world->wins.meta->padframe.curses_win);
-        free(world->wins.meta);
+        free_winmeta(world->wins.meta);
     }
     if (cleanup_flags & CLEANUP_MAP_OBJECT_DEFS)
     {
index df67411da45ef6d7010b0dadea3e38c5a5f3b362..389637b31b357e19bf6dfa886db749b257b944ca 100644 (file)
@@ -440,6 +440,14 @@ extern uint8_t init_win(struct WinMeta * wmeta, struct Win ** wp, char * title,
 
 
 
+extern void free_winmeta(struct WinMeta * wmeta)
+{
+    delwin(wmeta->padframe.curses_win);
+    free(wmeta);
+}
+
+
+
 extern void free_win(struct Win * win)
 {
     if (0 != win->frame.curses_win)
index aedb30b12e44030d8e8b949ad9ac56521e13e6d1..5ec4d2f62bc709c80dc632290c22ed21e9fd9a00 100644 (file)
@@ -119,7 +119,8 @@ extern uint8_t init_win(struct WinMeta * wmeta, struct Win ** w, char * title,
 
 
 
-/* Free allocated memory for an initialized Win struct. */
+/* Free allocated memory for an initialized Win / WinMeta struct. */
+extern void free_winmeta(struct WinMeta * wmeta);
 extern void free_win(struct Win * win);