Use cmd_list_element::doc_allocated for Python commands

Python commands manage their "doc" string manually, but
cmd_list_element already has doc_allocated to handle this case.  This
changes the Python code to use the existing facility.

gdb/ChangeLog
2019-11-26  Tom Tromey  <tom@tromey.com>

	* python/py-cmd.c (cmdpy_destroyer): Don't free "doc".
	(cmdpy_init): Set "doc_allocated".

Change-Id: I0014edc117b051bba1f4db267687d231e7fe9b56
This commit is contained in:
Tom Tromey 2019-11-15 16:41:12 -07:00
parent 4da8c3a8a5
commit 8318f3c337
2 changed files with 7 additions and 3 deletions

View file

@ -1,3 +1,8 @@
2019-11-26 Tom Tromey <tom@tromey.com>
* python/py-cmd.c (cmdpy_destroyer): Don't free "doc".
(cmdpy_init): Set "doc_allocated".
2019-11-26 Tom Tromey <tom@tromey.com> 2019-11-26 Tom Tromey <tom@tromey.com>
* gdbsupport/thread-pool.c (thread_pool::set_thread_count): Set * gdbsupport/thread-pool.c (thread_pool::set_thread_count): Set

View file

@ -98,10 +98,8 @@ cmdpy_destroyer (struct cmd_list_element *self, void *context)
gdbpy_ref<cmdpy_object> cmd ((cmdpy_object *) context); gdbpy_ref<cmdpy_object> cmd ((cmdpy_object *) context);
cmd->command = NULL; cmd->command = NULL;
/* We allocated the name, doc string, and perhaps the prefix /* We allocated the name and perhaps the prefix name. */
name. */
xfree ((char *) self->name); xfree ((char *) self->name);
xfree ((char *) self->doc);
xfree ((char *) self->prefixname); xfree ((char *) self->prefixname);
} }
@ -563,6 +561,7 @@ cmdpy_init (PyObject *self, PyObject *args, PyObject *kw)
/* There appears to be no API to set this. */ /* There appears to be no API to set this. */
cmd->func = cmdpy_function; cmd->func = cmdpy_function;
cmd->destroyer = cmdpy_destroyer; cmd->destroyer = cmdpy_destroyer;
cmd->doc_allocated = 1;
obj->command = cmd; obj->command = cmd;
set_cmd_context (cmd, self_ref.release ()); set_cmd_context (cmd, self_ref.release ());