diff options
| -rw-r--r-- | gui/init.cpp | 4 | ||||
| -rw-r--r-- | gui/init.hpp | 3 | ||||
| -rw-r--r-- | variant/default/main.cpp | 2 | 
3 files changed, 5 insertions, 4 deletions
| diff --git a/gui/init.cpp b/gui/init.cpp index 07f6c6b1..77d90212 100644 --- a/gui/init.cpp +++ b/gui/init.cpp @@ -238,7 +238,7 @@ static int run_window(std::unique_ptr<QWidget> main_window)      return status;  } -int otr_main(int argc, char** argv, std::function<QWidget*()> const& make_main_window) +int otr_main(int argc, char** argv, std::function<std::unique_ptr<QWidget>()> const& make_main_window)  {      set_fp_mask();  #ifdef OTR_X11_THREADS @@ -286,7 +286,7 @@ int otr_main(int argc, char** argv, std::function<QWidget*()> const& make_main_w          }      } -    int ret = run_window(std::unique_ptr<QWidget>(make_main_window())); +    int ret = run_window(make_main_window());  #if 0      // msvc crashes in Qt plugin system's dtor diff --git a/gui/init.hpp b/gui/init.hpp index 7c437bcb..4274f437 100644 --- a/gui/init.hpp +++ b/gui/init.hpp @@ -3,9 +3,10 @@  #include "export.hpp"  #include <functional> +#include <memory>  #include <QWidget> -OTR_GUI_EXPORT int otr_main(int argc, char** argv, std::function<QWidget*()> const& make_main_window); +OTR_GUI_EXPORT int otr_main(int argc, char** argv, std::function<std::unique_ptr<QWidget>()> const& make_main_window);  // XXX TODO need split MainWindow into mixins each implementing part of the functionality diff --git a/variant/default/main.cpp b/variant/default/main.cpp index 0038583b..2c1dc607 100644 --- a/variant/default/main.cpp +++ b/variant/default/main.cpp @@ -11,7 +11,7 @@  int main(int argc, char** argv)  { -    return run_application(argc, argv, [] { return new main_window; }); +    return run_application(argc, argv, [] { return std::make_unique<main_window>(); });  }  #if defined _MSC_VER | 
