From 58c91c02e2889b7b6e6c2c0ae6862e09c6c58f05 Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 1 Jan 2015 22:56:57 +0100 Subject: [PATCH] DOCS/client_api_examples: don't throw char* in C++ code C++ is the worst language ever, and allows throwing any type, even if it doesn't make sense. In this case, we were throwing char*, which the runtime typically treats as opaque, instead of printing it as message if such an exception was not caught. Conflicts: DOCS/client_api_examples/qml/mpvrenderer.cpp --- DOCS/client_api_examples/qtexample.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/DOCS/client_api_examples/qtexample.cpp b/DOCS/client_api_examples/qtexample.cpp index f44dfd29c1..7e208984ad 100644 --- a/DOCS/client_api_examples/qtexample.cpp +++ b/DOCS/client_api_examples/qtexample.cpp @@ -2,6 +2,7 @@ #include #include +#include #include #include @@ -55,7 +56,7 @@ MainWindow::MainWindow(QWidget *parent) : mpv = mpv_create(); if (!mpv) - throw "can't create mpv instance"; + throw std::runtime_error("can't create mpv instance"); // Create a video child window. Force Qt to create a native window, and // pass the window ID to the mpv wid option. Works on: X11, win32, Cocoa @@ -92,7 +93,7 @@ MainWindow::MainWindow(QWidget *parent) : mpv_set_wakeup_callback(mpv, wakeup, this); if (mpv_initialize(mpv) < 0) - throw "mpv failed to initialize"; + throw std::runtime_error("mpv failed to initialize"); } void MainWindow::handle_mpv_event(mpv_event *event)