diff --git a/examples/webenginewidgets/simplebrowser/main.cpp b/examples/webenginewidgets/simplebrowser/main.cpp index 761403fb56363294fe4b9e6aa34c5c7d766d2f12..750e7ae43b78a8d9616846e2664adde0e1aac442 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();