home *** CD-ROM | disk | FTP | other *** search
- To: vim-dev@vim.org
- Subject: Patch 7.0.039
- Fcc: outbox
- From: Bram Moolenaar <Bram@moolenaar.net>
- Mime-Version: 1.0
- Content-Type: text/plain; charset=ISO-8859-1
- Content-Transfer-Encoding: 8bit
- ------------
-
- Patch 7.0.039
- Problem: Calling inputdialog() with a third argument in the console doesn't
- work.
- Solution: Make a separate function for input() and inputdialog(). (Yegappan
- Lakshmanan)
- Files: src/eval.c
-
-
- *** ../vim-7.0.038/src/eval.c Wed Jul 12 21:48:56 2006
- --- src/eval.c Mon Jul 10 23:03:13 2006
- ***************
- *** 11321,11334 ****
-
- static int inputsecret_flag = 0;
-
- /*
- ! * "input()" function
- ! * Also handles inputsecret() when inputsecret is set.
- */
- static void
- ! f_input(argvars, rettv)
- typval_T *argvars;
- typval_T *rettv;
- {
- char_u *prompt = get_tv_string_chk(&argvars[0]);
- char_u *p = NULL;
- --- 11321,11339 ----
-
- static int inputsecret_flag = 0;
-
- + static void get_user_input __ARGS((typval_T *argvars, typval_T *rettv, int inputdialog));
- +
- /*
- ! * This function is used by f_input() and f_inputdialog() functions. The third
- ! * argument to f_input() specifies the type of completion to use at the
- ! * prompt. The third argument to f_inputdialog() specifies the value to return
- ! * when the user cancels the prompt.
- */
- static void
- ! get_user_input(argvars, rettv, inputdialog)
- typval_T *argvars;
- typval_T *rettv;
- + int inputdialog;
- {
- char_u *prompt = get_tv_string_chk(&argvars[0]);
- char_u *p = NULL;
- ***************
- *** 11378,11384 ****
- if (defstr != NULL)
- stuffReadbuffSpec(defstr);
-
- ! if (argvars[2].v_type != VAR_UNKNOWN)
- {
- char_u *xp_name;
- int xp_namelen;
- --- 11383,11389 ----
- if (defstr != NULL)
- stuffReadbuffSpec(defstr);
-
- ! if (!inputdialog && argvars[2].v_type != VAR_UNKNOWN)
- {
- char_u *xp_name;
- int xp_namelen;
- ***************
- *** 11413,11418 ****
- --- 11418,11435 ----
- }
-
- /*
- + * "input()" function
- + * Also handles inputsecret() when inputsecret is set.
- + */
- + static void
- + f_input(argvars, rettv)
- + typval_T *argvars;
- + typval_T *rettv;
- + {
- + get_user_input(argvars, rettv, FALSE);
- + }
- +
- + /*
- * "inputdialog()" function
- */
- static void
- ***************
- *** 11452,11458 ****
- }
- else
- #endif
- ! f_input(argvars, rettv);
- }
-
- /*
- --- 11469,11475 ----
- }
- else
- #endif
- ! get_user_input(argvars, rettv, TRUE);
- }
-
- /*
- *** ../vim-7.0.038/src/version.c Wed Jul 12 21:48:56 2006
- --- src/version.c Wed Jul 12 21:56:30 2006
- ***************
- *** 668,669 ****
- --- 668,671 ----
- { /* Add new patch number below this line */
- + /**/
- + 39,
- /**/
-
- --
- A consultant is a person who takes your money and annoys your employees while
- tirelessly searching for the best way to extend the consulting contract.
- (Scott Adams - The Dilbert principle)
-
- /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
- /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
- \\\ download, build and distribute -- http://www.A-A-P.org ///
- \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
-