mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-12-15 08:08:55 +00:00
2007-08-13 Michael Snyder <msnyder@access-company.com>
* tui/tui-winsource.c (tui_alloc_source_buffer): Clean up allocation.
This commit is contained in:
parent
f5b73fbba3
commit
81b7c67a8b
@ -1,5 +1,7 @@
|
||||
2007-08-13 Michael Snyder <msnyder@access-company.com>
|
||||
|
||||
* tui/tui-winsource.c (tui_alloc_source_buffer): Clean up allocation.
|
||||
|
||||
* event-top.c (command_line_handler): Memory leak.
|
||||
|
||||
* mi/mi-cmd-var.c (mi_cmd_var_set_format): Memory leak.
|
||||
|
@ -569,45 +569,40 @@ tui_alloc_source_buffer (struct tui_win_info *win_info)
|
||||
{
|
||||
char *src_line_buf;
|
||||
int i, line_width, max_lines;
|
||||
enum tui_status ret = TUI_FAILURE;
|
||||
|
||||
max_lines = win_info->generic.height; /* less the highlight box */
|
||||
line_width = win_info->generic.width - 1;
|
||||
/*
|
||||
** Allocate the buffer for the source lines. Do this only once since they
|
||||
** will be re-used for all source displays. The only other time this will
|
||||
** be done is when a window's size changes.
|
||||
* Allocate the buffer for the source lines. Do this only once
|
||||
* since they will be re-used for all source displays. The only
|
||||
* other time this will be done is when a window's size changes.
|
||||
*/
|
||||
if (win_info->generic.content == NULL)
|
||||
{
|
||||
src_line_buf = (char *) xmalloc ((max_lines * line_width) * sizeof (char));
|
||||
src_line_buf = (char *)
|
||||
xmalloc ((max_lines * line_width) * sizeof (char));
|
||||
if (src_line_buf == (char *) NULL)
|
||||
fputs_unfiltered (
|
||||
"Unable to Allocate Memory for Source or Disassembly Display.\n",
|
||||
gdb_stderr);
|
||||
else
|
||||
{
|
||||
/* allocate the content list */
|
||||
if ((win_info->generic.content =
|
||||
(void **) tui_alloc_content (max_lines, SRC_WIN)) == NULL)
|
||||
{
|
||||
xfree (src_line_buf);
|
||||
src_line_buf = (char *) NULL;
|
||||
fputs_unfiltered (
|
||||
"Unable to Allocate Memory for Source or Disassembly Display.\n",
|
||||
gdb_stderr);
|
||||
}
|
||||
fputs_unfiltered ("Unable to Allocate Memory for Source or Disassembly Display.\n",
|
||||
gdb_stderr);
|
||||
return TUI_FAILURE;
|
||||
}
|
||||
/* allocate the content list */
|
||||
if ((win_info->generic.content =
|
||||
(void **) tui_alloc_content (max_lines, SRC_WIN)) == NULL)
|
||||
{
|
||||
xfree (src_line_buf);
|
||||
fputs_unfiltered ("Unable to Allocate Memory for Source or Disassembly Display.\n",
|
||||
gdb_stderr);
|
||||
return TUI_FAILURE;
|
||||
}
|
||||
for (i = 0; i < max_lines; i++)
|
||||
((struct tui_win_element *)
|
||||
win_info->generic.content[i])->which_element.source.line =
|
||||
src_line_buf + (line_width * i);
|
||||
ret = TUI_SUCCESS;
|
||||
}
|
||||
else
|
||||
ret = TUI_SUCCESS;
|
||||
|
||||
return ret;
|
||||
return TUI_SUCCESS;
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user