edit: Fix libreadline history clearing with WPA_TRACE

The HIST_ENTRY and its variables are allocated within libreadline, so
they won't have the WPA_TRACE special header and cannot be freed with
os_free(). Use free() to avoid issues during wpa_cli termination if any
of the new commands added to the history are to be removed (e.g.,
set_network could include a password).

Signed-hostap: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2013-05-14 16:46:38 +03:00
parent 455299fb40
commit 0af2db7478

View File

@ -167,9 +167,9 @@ void edit_deinit(const char *history_file,
if (filter_cb && filter_cb(edit_cb_ctx, p)) { if (filter_cb && filter_cb(edit_cb_ctx, p)) {
h = remove_history(where_history()); h = remove_history(where_history());
if (h) { if (h) {
os_free(h->line); free(h->line);
free(h->data); free(h->data);
os_free(h); free(h);
} else } else
next_history(); next_history();
} else } else