patch 8.1.0439: recursive use of getcmdline() still not protected

Problem:    Recursive use of getcmdline() still not protected.
Solution:   Instead of saving the command buffer when making a call which may
            cause recursiveness, save the buffer when actually being called
            recursively.
diff --git a/src/proto/ex_getln.pro b/src/proto/ex_getln.pro
index 6f82904..c7386a4 100644
--- a/src/proto/ex_getln.pro
+++ b/src/proto/ex_getln.pro
@@ -15,8 +15,6 @@
 void putcmdline(int c, int shift);
 void unputcmdline(void);
 int put_on_cmdline(char_u *str, int len, int redraw);
-char_u *save_cmdline_alloc(void);
-void restore_cmdline_alloc(char_u *p);
 void cmdline_paste_str(char_u *s, int literally);
 void redrawcmdline(void);
 void redrawcmdline_ex(int do_compute_cmdrow);
@@ -54,6 +52,7 @@
 int read_viminfo_history(vir_T *virp, int writing);
 void handle_viminfo_history(garray_T *values, int writing);
 void finish_viminfo_history(vir_T *virp);
+void cmdline_init(void);
 void write_viminfo_history(FILE *fp, int merge);
 void cmd_pchar(int c, int offset);
 int cmd_gchar(int offset);