Blame 0001-report-newt-add-option-to-display-version-rhbz-74159.patch

Jiri Moskovcak 8e94653
From 6b8ba25bd3caf0065805197a3b10e2697164ae3b Mon Sep 17 00:00:00 2001
Jiri Moskovcak 8e94653
From: Miroslav Lichvar <mlichvar@redhat.com>
Jiri Moskovcak 8e94653
Date: Thu, 29 Sep 2011 17:51:20 +0200
Jiri Moskovcak 8e94653
Subject: [PATCH 1/4] report-newt: add option to display version (rhbz#741590)
Jiri Moskovcak 8e94653
Jiri Moskovcak 8e94653
---
Jiri Moskovcak 8e94653
 src/report-newt/report-newt.c |   13 ++++++++++++-
Jiri Moskovcak 8e94653
 1 files changed, 12 insertions(+), 1 deletions(-)
Jiri Moskovcak 8e94653
Jiri Moskovcak 8e94653
diff --git a/src/report-newt/report-newt.c b/src/report-newt/report-newt.c
Jiri Moskovcak 8e94653
index b8cc020..b8dddbc 100644
Jiri Moskovcak 8e94653
--- a/src/report-newt/report-newt.c
Jiri Moskovcak 8e94653
+++ b/src/report-newt/report-newt.c
Jiri Moskovcak 8e94653
@@ -357,18 +357,29 @@ int main(int argc, char **argv)
Jiri Moskovcak 8e94653
     enum {
Jiri Moskovcak 8e94653
         OPT_o = 1 << 0, // report only
Jiri Moskovcak 8e94653
         OPT_r = 1 << 1,
Jiri Moskovcak 8e94653
+        OPT_V = 1 << 2,
Jiri Moskovcak 8e94653
     };
Jiri Moskovcak 8e94653
     /* Keep enum above and order of options below in sync! */
Jiri Moskovcak 8e94653
     struct options program_options[] = {
Jiri Moskovcak 8e94653
         OPT_BOOL('o', "report-only", NULL, _("Skip analyze steps, go through report steps only")),
Jiri Moskovcak 8e94653
         OPT_BOOL('d', "delete", NULL,      _("Remove DIR after reporting")),
Jiri Moskovcak 8e94653
+        OPT_BOOL('V', "version", NULL,     _("Display version and exit")),
Jiri Moskovcak 8e94653
         OPT_END()
Jiri Moskovcak 8e94653
     };
Jiri Moskovcak 8e94653
     unsigned opts = parse_opts(argc, argv, program_options, program_usage_string);
Jiri Moskovcak 8e94653
     argv += optind;
Jiri Moskovcak 8e94653
-    if (!argv[0] || argv[1] || !(opts & OPT_o)) /* zero or >1 arguments */
Jiri Moskovcak 8e94653
+    /* zero or >1 arguments with -o, or >0 arguments with -V */
Jiri Moskovcak 8e94653
+    if (!(opts & (OPT_o | OPT_V)) ||
Jiri Moskovcak 8e94653
+            ((opts & OPT_o) && (!argv[0] || argv[1])) ||
Jiri Moskovcak 8e94653
+            ((opts & OPT_V) && argv[0]))
Jiri Moskovcak 8e94653
         show_usage_and_die(program_usage_string, program_options);
Jiri Moskovcak 8e94653
 
Jiri Moskovcak 8e94653
+    if (opts & OPT_V)
Jiri Moskovcak 8e94653
+    {
Jiri Moskovcak 8e94653
+        printf("%s "VERSION"\n", g_progname);
Jiri Moskovcak 8e94653
+        return 0;
Jiri Moskovcak 8e94653
+    }
Jiri Moskovcak 8e94653
+
Jiri Moskovcak 8e94653
     dump_dir_name = argv[0];
Jiri Moskovcak 8e94653
 
Jiri Moskovcak 8e94653
     /* Get settings */
Jiri Moskovcak 8e94653
-- 
Jiri Moskovcak 8e94653
1.7.6.4
Jiri Moskovcak 8e94653