Avoid some manual memory management in Python
This changes a few places in the Python code to avoid manual memory management, in favor of letting std::string do the work. ChangeLog 2017-08-03 Tom Tromey <tom@tromey.com> * python/python.c (compute_python_string): Return std::string. (gdbpy_eval_from_control_command): Update. (do_start_initialization): Use std::string. * python/py-varobj.c (py_varobj_iter_next): Use string_printf, not xstrprintf. * python/py-breakpoint.c (local_setattro): Use string_printf, not xstrprintf.
This commit is contained in:
parent
3c9ebddd93
commit
7f968c899f
4 changed files with 29 additions and 42 deletions
|
@ -1026,15 +1026,12 @@ local_setattro (PyObject *self, PyObject *name, PyObject *v)
|
|||
extlang = get_breakpoint_cond_ext_lang (obj->bp, EXT_LANG_PYTHON);
|
||||
if (extlang != NULL)
|
||||
{
|
||||
char *error_text;
|
||||
|
||||
error_text
|
||||
= xstrprintf (_("Only one stop condition allowed. There is"
|
||||
" currently a %s stop condition defined for"
|
||||
" this breakpoint."),
|
||||
ext_lang_capitalized_name (extlang));
|
||||
PyErr_SetString (PyExc_RuntimeError, error_text);
|
||||
xfree (error_text);
|
||||
std::string error_text
|
||||
= string_printf (_("Only one stop condition allowed. There is"
|
||||
" currently a %s stop condition defined for"
|
||||
" this breakpoint."),
|
||||
ext_lang_capitalized_name (extlang));
|
||||
PyErr_SetString (PyExc_RuntimeError, error_text.c_str ());
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue