diff options
-rw-r--r-- | lib/vector.c | 14 | ||||
-rw-r--r-- | lib/vector.h | 3 | ||||
-rw-r--r-- | lib/vty.c | 4 | ||||
-rw-r--r-- | tests/test-commands.c | 2 | ||||
-rw-r--r-- | vtysh/vtysh.c | 5 |
5 files changed, 6 insertions, 22 deletions
diff --git a/lib/vector.c b/lib/vector.c index 03ad3171d..0b1d5d504 100644 --- a/lib/vector.c +++ b/lib/vector.c @@ -25,7 +25,7 @@ #include "memory.h" DEFINE_MTYPE_STATIC(LIB, VECTOR, "Vector") -DEFINE_MTYPE( LIB, VECTOR_INDEX, "Vector index") +DEFINE_MTYPE_STATIC(LIB, VECTOR_INDEX, "Vector index") /* Initialize vector : allocate memory and return vector. */ vector @@ -44,18 +44,6 @@ vector_init (unsigned int size) } void -vector_only_wrapper_free (vector v) -{ - XFREE (MTYPE_VECTOR, v); -} - -void -vector_only_index_free (void *index) -{ - XFREE (MTYPE_VECTOR_INDEX, index); -} - -void vector_free (vector v) { XFREE (MTYPE_VECTOR_INDEX, v->index); diff --git a/lib/vector.h b/lib/vector.h index d8f4c7860..28f4ad320 100644 --- a/lib/vector.h +++ b/lib/vector.h @@ -24,7 +24,6 @@ #define _ZEBRA_VECTOR_H #include "memory.h" -DECLARE_MTYPE(VECTOR_INDEX) /* struct for vector */ struct _vector @@ -55,8 +54,6 @@ extern int vector_set (vector v, void *val); extern int vector_set_index (vector v, unsigned int i, void *val); extern void vector_unset (vector v, unsigned int i); extern unsigned int vector_count (vector v); -extern void vector_only_wrapper_free (vector v); -extern void vector_only_index_free (void *index); extern void vector_free (vector v); extern vector vector_copy (vector v); @@ -962,8 +962,6 @@ vty_complete_command (struct vty *vty) vty_backward_pure_word (vty); vty_insert_word_overwrite (vty, matched[0]); XFREE (MTYPE_TMP, matched[0]); - vector_only_index_free (matched); - return; break; case CMD_COMPLETE_LIST_MATCH: for (i = 0; matched[i] != NULL; i++) @@ -986,7 +984,7 @@ vty_complete_command (struct vty *vty) break; } if (matched) - vector_only_index_free (matched); + XFREE (MTYPE_TMP, matched); } static void diff --git a/tests/test-commands.c b/tests/test-commands.c index c0bc39f88..c86ffc589 100644 --- a/tests/test-commands.c +++ b/tests/test-commands.c @@ -317,7 +317,7 @@ test_run(struct prng *prng, struct vty *vty, const char *cmd, unsigned int edit_ printf(" '%s'\n", completions[j]); XFREE(MTYPE_TMP, completions[j]); } - XFREE(MTYPE_VECTOR_INDEX, completions); + XFREE(MTYPE_TMP, completions); } vty->node = cnode->node; diff --git a/vtysh/vtysh.c b/vtysh/vtysh.c index 1db3dca35..f15f051e6 100644 --- a/vtysh/vtysh.c +++ b/vtysh/vtysh.c @@ -828,8 +828,6 @@ command_generator (const char *text, int state) if (rl_end && isspace ((int) rl_line_buffer[rl_end - 1])) vector_set (vline, NULL); - if (matched) - XFREE (MTYPE_TMP, matched); matched = cmd_complete_command (vline, vty, &complete_status); cmd_free_strvec (vline); } @@ -837,6 +835,9 @@ command_generator (const char *text, int state) if (matched && matched[index]) return matched[index++]; + XFREE (MTYPE_TMP, matched); + matched = NULL; + return NULL; } |