Use std::unique_ptr<> in ScreenManager
[supertux.git] / src / supertux / menu / contrib_world_menu.cpp
index 5d22b8e..b4ef4a5 100644 (file)
@@ -19,6 +19,7 @@
 #include "audio/sound_manager.hpp"
 #include "gui/menu_item.hpp"
 #include "supertux/globals.hpp"
+#include "supertux/screen_fade.hpp"
 #include "supertux/screen_manager.hpp"
 #include "supertux/title_screen.hpp"
 #include "supertux/world.hpp"
@@ -50,8 +51,9 @@ ContribWorldMenu::check_menu()
     if (get_item_by_id(index).kind == MN_ACTION) 
     {
       sound_manager->stop_music();
-      GameSession* session = new GameSession(m_current_world.get_level_filename(index), m_current_world.get_player_status());
-      g_screen_manager->push_screen(session);
+      g_screen_manager->push_screen(
+        std::unique_ptr<Screen>(
+          new GameSession(m_current_world.get_level_filename(index), m_current_world.get_player_status())));
     }
   }
 }