From c3328169d5566b97a6a6921067017e4369dd7cd6 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Tue, 23 Jul 2019 22:15:25 +0200 Subject: patch 8.1.1736: viminfo support is spread out Problem: Viminfo support is spread out. Solution: Move more viminfo code to viminfo.c. (Yegappan Lakshmanan, closes #4717) Reorder code to make most functions static. --- src/ex_cmds.c | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) (limited to 'src/ex_cmds.c') diff --git a/src/ex_cmds.c b/src/ex_cmds.c index 47d1998e8a..9e093ee1b3 100644 --- a/src/ex_cmds.c +++ b/src/ex_cmds.c @@ -5085,24 +5085,23 @@ global_exe(char_u *cmd) } #ifdef FEAT_VIMINFO - int -read_viminfo_sub_string(vir_T *virp, int force) +/* + * Get the previous substitute pattern. + */ + char_u * +get_old_sub(void) { - if (force) - vim_free(old_sub); - if (force || old_sub == NULL) - old_sub = viminfo_readstring(virp, 1, TRUE); - return viminfo_readline(virp); + return old_sub; } +/* + * Set the previous substitute pattern. "val" must be allocated. + */ void -write_viminfo_sub_string(FILE *fp) +set_old_sub(char_u *val) { - if (get_viminfo_parameter('/') != 0 && old_sub != NULL) - { - fputs(_("\n# Last Substitute String:\n$"), fp); - viminfo_writestring(fp, old_sub); - } + vim_free(old_sub); + old_sub = val; } #endif // FEAT_VIMINFO -- cgit v1.2.3