* python/py-auto-load.c (source_section_scripts): Fix file
descriptor leak. * python/python.c (source_python_script_for_objfile): Tweak comments.
This commit is contained in:
parent
3c9057f381
commit
562f943bcc
3 changed files with 18 additions and 11 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2011-09-19 Doug Evans <dje@google.com>
|
||||||
|
|
||||||
|
* python/py-auto-load.c (source_section_scripts): Fix file
|
||||||
|
descriptor leak.
|
||||||
|
* python/python.c (source_python_script_for_objfile): Tweak comments.
|
||||||
|
|
||||||
2011-09-18 Yao Qi <yao@codesourcery.com>
|
2011-09-18 Yao Qi <yao@codesourcery.com>
|
||||||
Ulrich Weigand <ulrich.weigand@linaro.org>
|
Ulrich Weigand <ulrich.weigand@linaro.org>
|
||||||
|
|
||||||
|
|
|
@ -296,9 +296,6 @@ source_section_scripts (struct objfile *objfile, const char *source_name,
|
||||||
in_hash_table = maybe_add_script (pspace_info->loaded_scripts, file,
|
in_hash_table = maybe_add_script (pspace_info->loaded_scripts, file,
|
||||||
opened ? full_path : NULL);
|
opened ? full_path : NULL);
|
||||||
|
|
||||||
if (opened)
|
|
||||||
free (full_path);
|
|
||||||
|
|
||||||
if (! opened)
|
if (! opened)
|
||||||
{
|
{
|
||||||
/* We don't throw an error, the program is still debuggable. */
|
/* We don't throw an error, the program is still debuggable. */
|
||||||
|
@ -310,12 +307,15 @@ Use `info auto-load-scripts [REGEXP]' to list them."),
|
||||||
GDBPY_AUTO_SECTION_NAME, objfile->name);
|
GDBPY_AUTO_SECTION_NAME, objfile->name);
|
||||||
pspace_info->script_not_found_warning_printed = TRUE;
|
pspace_info->script_not_found_warning_printed = TRUE;
|
||||||
}
|
}
|
||||||
continue;
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
/* If this file is not currently loaded, load it. */
|
/* If this file is not currently loaded, load it. */
|
||||||
if (! in_hash_table)
|
if (! in_hash_table)
|
||||||
source_python_script_for_objfile (objfile, stream, file);
|
source_python_script_for_objfile (objfile, stream, file);
|
||||||
|
fclose (stream);
|
||||||
|
free (full_path);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -903,7 +903,10 @@ gdbpy_progspaces (PyObject *unused1, PyObject *unused2)
|
||||||
static struct objfile *gdbpy_current_objfile;
|
static struct objfile *gdbpy_current_objfile;
|
||||||
|
|
||||||
/* Set the current objfile to OBJFILE and then read STREAM,FILE as
|
/* Set the current objfile to OBJFILE and then read STREAM,FILE as
|
||||||
Python code. */
|
Python code.
|
||||||
|
STREAM is left open, it is up to the caller to close it.
|
||||||
|
If an exception occurs python will print the traceback and
|
||||||
|
clear the error indicator. */
|
||||||
|
|
||||||
void
|
void
|
||||||
source_python_script_for_objfile (struct objfile *objfile,
|
source_python_script_for_objfile (struct objfile *objfile,
|
||||||
|
@ -914,8 +917,6 @@ source_python_script_for_objfile (struct objfile *objfile,
|
||||||
cleanups = ensure_python_env (get_objfile_arch (objfile), current_language);
|
cleanups = ensure_python_env (get_objfile_arch (objfile), current_language);
|
||||||
gdbpy_current_objfile = objfile;
|
gdbpy_current_objfile = objfile;
|
||||||
|
|
||||||
/* Note: If an exception occurs python will print the traceback and
|
|
||||||
clear the error indicator. */
|
|
||||||
PyRun_SimpleFile (stream, file);
|
PyRun_SimpleFile (stream, file);
|
||||||
|
|
||||||
do_cleanups (cleanups);
|
do_cleanups (cleanups);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue