diff options
-rw-r--r-- | core/subsurfacestartup.c | 6 | ||||
-rw-r--r-- | core/subsurfacestartup.h | 1 | ||||
-rw-r--r-- | subsurface-desktop-main.cpp | 8 |
3 files changed, 11 insertions, 4 deletions
diff --git a/core/subsurfacestartup.c b/core/subsurfacestartup.c index 4a82aeff4..61bff87fa 100644 --- a/core/subsurfacestartup.c +++ b/core/subsurfacestartup.c @@ -148,14 +148,18 @@ const char *monthname(int mon) */ bool imported = false; -static void print_version() +bool version_printed = false; +void print_version() { + if (version_printed) + return; printf("Subsurface v%s,\n", subsurface_git_version()); printf("built with libdivecomputer v%s\n", dc_version(NULL)); print_qt_versions(); int git_maj, git_min, git_rev; git_libgit2_version(&git_maj, &git_min, &git_rev); printf("built with libgit2 %d.%d.%d\n", git_maj, git_min, git_rev); + version_printed = true; } void print_files() diff --git a/core/subsurfacestartup.h b/core/subsurfacestartup.h index fcabb4f6c..b26c99025 100644 --- a/core/subsurfacestartup.h +++ b/core/subsurfacestartup.h @@ -19,6 +19,7 @@ void parse_argument(const char *arg); void free_prefs(void); void copy_prefs(struct preferences *src, struct preferences *dest); void print_files(void); +void print_version(void); extern char *settings_suffix; diff --git a/subsurface-desktop-main.cpp b/subsurface-desktop-main.cpp index 58da1fa43..5b8424487 100644 --- a/subsurface-desktop-main.cpp +++ b/subsurface-desktop-main.cpp @@ -33,18 +33,20 @@ static void messageHandler(QtMsgType type, const QMessageLogContext &ctx, const int main(int argc, char **argv) { + subsurface_console_init(); + qInstallMessageHandler(messageHandler); + if (verbose) /* print the version if the Win32 console_init() code enabled verbose. */ + print_version(); + int i; bool no_filenames = true; QLoggingCategory::setFilterRules(QStringLiteral("qt.bluetooth* = true")); - qInstallMessageHandler(messageHandler); QApplication *application = new QApplication(argc, argv); (void)application; QStringList files; QStringList importedFiles; QStringList arguments = QCoreApplication::arguments(); - subsurface_console_init(); - const char *default_directory = system_default_directory(); const char *default_filename = system_default_filename(); subsurface_mkdir(default_directory); |