diff options
Diffstat (limited to 'examples')
-rw-r--r-- | examples/webenginewidgets/simplebrowser/main.cpp | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/examples/webenginewidgets/simplebrowser/main.cpp b/examples/webenginewidgets/simplebrowser/main.cpp index 761403fb5..750e7ae43 100644 --- a/examples/webenginewidgets/simplebrowser/main.cpp +++ b/examples/webenginewidgets/simplebrowser/main.cpp @@ -42,6 +42,18 @@ #include "browserwindow.h" #include <QApplication> +QString getCommandLineUrlArgument() +{ + const QStringList args = QCoreApplication::arguments(); + if (args.count() > 1) { + const QString lastArg = args.last(); + const bool isValidUrl = QUrl::fromUserInput(lastArg).isValid(); + if (isValidUrl) + return lastArg; + } + return QString(); +} + int main(int argc, char **argv) { QApplication app(argc, argv); @@ -50,9 +62,9 @@ int main(int argc, char **argv) BrowserWindow *window = new BrowserWindow(); Browser::instance().addWindow(window); - QStringList args = QCoreApplication::arguments(); - if (args.count() > 1) - window->loadPage(args.last()); + const QString url = getCommandLineUrlArgument(); + if (!url.isEmpty()) + window->loadPage(url); else window->loadHomePage(); |