Code

Rename opt_*_args to opt_*_argv
[tig.git] / tig.c
diff --git a/tig.c b/tig.c
index 7bc5daaaeeb440018bcb7642e42af11c66ea63ad..ee0d0d63eb32833202af271a8134291c9c32f738 100644 (file)
--- a/tig.c
+++ b/tig.c
@@ -1244,9 +1244,9 @@ static char opt_git_dir[SIZEOF_STR]       = "";
 static signed char opt_is_inside_work_tree     = -1; /* set to TRUE or FALSE */
 static char opt_editor[SIZEOF_STR]     = "";
 static FILE *opt_tty                   = NULL;
-static const char **opt_diff_args      = NULL;
-static const char **opt_rev_args       = NULL;
-static const char **opt_file_args      = NULL;
+static const char **opt_diff_argv      = NULL;
+static const char **opt_rev_argv       = NULL;
+static const char **opt_file_argv      = NULL;
 
 #define is_initial_commit()    (!get_ref_head())
 #define is_head_commit(rev)    (!strcmp((rev), "HEAD") || (get_ref_head() && !strcmp(rev, get_ref_head()->id)))
@@ -2182,14 +2182,14 @@ load_options(void)
         * that conflict with keybindings. */
        add_builtin_run_requests();
 
-       if (!opt_diff_args && tig_diff_opts && *tig_diff_opts) {
+       if (!opt_diff_argv && tig_diff_opts && *tig_diff_opts) {
                static const char *diff_opts[SIZEOF_ARG] = { NULL };
                int argc = 0;
 
                if (!string_format(buf, "%s", tig_diff_opts) ||
                    !argv_from_string(diff_opts, &argc, buf))
                        die("TIG_DIFF_OPTS contains too many arguments");
-               else if (!argv_copy(&opt_diff_args, diff_opts))
+               else if (!argv_copy(&opt_diff_argv, diff_opts))
                        die("Failed to format TIG_DIFF_OPTS arguments");
        }
 
@@ -3236,18 +3236,18 @@ format_argv(const char ***dst_argv, const char *src_argv[], bool replace, bool f
                size_t bufpos = 0;
 
                if (!strcmp(arg, "%(fileargs)")) {
-                       if (!argv_append_array(dst_argv, opt_file_args))
+                       if (!argv_append_array(dst_argv, opt_file_argv))
                                break;
                        continue;
 
                } else if (!strcmp(arg, "%(diffargs)")) {
-                       if (!argv_append_array(dst_argv, opt_diff_args))
+                       if (!argv_append_array(dst_argv, opt_diff_argv))
                                break;
                        continue;
 
                } else if (!strcmp(arg, "%(revargs)") ||
                           (first && !strcmp(arg, "%(commit)"))) {
-                       if (!argv_append_array(dst_argv, opt_rev_args))
+                       if (!argv_append_array(dst_argv, opt_rev_argv))
                                break;
                        continue;
                }
@@ -3332,7 +3332,7 @@ static bool
 prepare_io(struct view *view, const char *dir, const char *argv[], bool replace)
 {
        view->dir = dir;
-       return format_argv(&view->argv, argv, replace, !view->parent);
+       return format_argv(&view->argv, argv, replace, !view->prev);
 }
 
 static bool
@@ -4235,9 +4235,9 @@ diff_read(struct view *view, char *data)
 {
        if (!data) {
                /* Fall back to retry if no diff will be shown. */
-               if (view->lines == 0 && opt_file_args) {
+               if (view->lines == 0 && opt_file_argv) {
                        int pos = argv_size(view->argv)
-                               - argv_size(opt_file_args) - 1;
+                               - argv_size(opt_file_argv) - 1;
 
                        if (pos > 0 && !strcmp(view->argv[pos], "--")) {
                                for (; view->argv[pos]; pos++) {
@@ -6942,6 +6942,8 @@ main_request(struct view *view, enum request request, struct line *line)
 
        switch (request) {
        case REQ_ENTER:
+               if (view_is_displayed(view) && display[0] != view)
+                       maximize_view(view);
                open_view(view, REQ_VIEW_DIFF, flags);
                break;
        case REQ_REFRESH:
@@ -7111,7 +7113,11 @@ init_display(void)
        keypad(status_win, TRUE);
        wbkgdset(status_win, get_line_attr(LINE_STATUS));
 
+#if defined(NCURSES_VERSION_PATCH) && (NCURSES_VERSION_PATCH >= 20080119)
        set_tabsize(opt_tab_size);
+#else
+       TABSIZE = opt_tab_size;
+#endif
 
        term = getenv("XTERM_VERSION") ? NULL : getenv("COLORTERM");
        if (term && !strcmp(term, "gnome-terminal")) {
@@ -7789,9 +7795,9 @@ filter_rev_parse(const char ***args, const char *arg1, const char *arg2, const c
 static void
 filter_options(const char *argv[])
 {
-       filter_rev_parse(&opt_file_args, "--no-revs", "--no-flags", argv);
-       filter_rev_parse(&opt_diff_args, "--no-revs", "--flags", argv);
-       filter_rev_parse(&opt_rev_args, "--symbolic", "--revs-only", argv);
+       filter_rev_parse(&opt_file_argv, "--no-revs", "--no-flags", argv);
+       filter_rev_parse(&opt_diff_argv, "--no-revs", "--flags", argv);
+       filter_rev_parse(&opt_rev_argv, "--symbolic", "--revs-only", argv);
 }
 
 static enum request
@@ -7839,7 +7845,7 @@ parse_options(int argc, const char *argv[])
                const char *opt = argv[i];
 
                if (seen_dashdash) {
-                       argv_append(&opt_file_args, opt);
+                       argv_append(&opt_file_argv, opt);
                        continue;
 
                } else if (!strcmp(opt, "--")) {
@@ -7855,7 +7861,7 @@ parse_options(int argc, const char *argv[])
                        quit(0);
 
                } else if (!strcmp(opt, "--all")) {
-                       argv_append(&opt_rev_args, opt);
+                       argv_append(&opt_rev_argv, opt);
                        continue;
                }