summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2006-04-29 22:03:41 +0000
committerBram Moolenaar <Bram@vim.org>2006-04-29 22:03:41 +0000
commitaa35dd1667c5903cdcc32ebe10f27bc6683c68a1 (patch)
treeef5b6e4fc2cb3a85cb17dc5d5066550cc2de5fc4
parentc93b83afd0117da75a3fc4f14e6e94f84228d1d5 (diff)
updated for version 7.0f05v7.0f05
-rw-r--r--src/eval.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/eval.c b/src/eval.c
index 6fa70c4f35..388727f181 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -198,6 +198,9 @@ struct ufunc
*/
static hashtab_T func_hashtab;
+/* The names of packages that once were loaded is remembered. */
+static garray_T ga_loaded = {0, 0, sizeof(char_u *), 4, NULL};
+
/* list heads for garbage collection */
static dict_T *first_dict = NULL; /* list of all dicts */
static list_T *first_list = NULL; /* list of all lists */
@@ -807,6 +810,9 @@ eval_clear()
free_all_functions();
hash_clear(&func_hashtab);
+ /* autoloaded script names */
+ ga_clear_strings(&ga_loaded);
+
/* unreferenced lists and dicts */
(void)garbage_collect();
}
@@ -19098,10 +19104,11 @@ free_all_functions()
function_exists(name)
char_u *name;
{
- char_u *p = name;
+ char_u *nm = name;
+ char_u *p;
int n = FALSE;
- p = trans_function_name(&p, FALSE, TFN_INT|TFN_QUIET, NULL);
+ p = trans_function_name(&nm, FALSE, TFN_INT|TFN_QUIET, NULL);
if (p != NULL)
{
if (builtin_function(p))
@@ -19309,9 +19316,6 @@ prof_self_cmp(s1, s2)
#endif
-/* The names of packages that once were loaded is remembered. */
-static garray_T ga_loaded = {0, 0, sizeof(char_u *), 4, NULL};
-
/*
* If "name" has a package name try autoloading the script for it.
* Return TRUE if a package was loaded.