- if (args->count() > 0) {
- for (int i = 0; i < args->count(); ++i) {
- openWindow(args->url(i));
+ static bool first = true;
+
+ const int argsCount = args->count();
+ if ((argsCount > 0) || !first || !isSessionRestored()) {
+ QList<KUrl> urls;
+ for (int i = 0; i < argsCount; ++i) {
+ urls.append(args->url(i));