Index: gdb/tui/tui-stack.c |
diff --git a/gdb/tui/tui-stack.c b/gdb/tui/tui-stack.c |
index 262a6bf3143de6d8c71970e4e530945617ced2cb..c1ea7ad2b003f3b4f02835708d327785d67d15e2 100644 |
--- a/gdb/tui/tui-stack.c |
+++ b/gdb/tui/tui-stack.c |
@@ -1,6 +1,6 @@ |
/* TUI display locator. |
- Copyright (C) 1998-2004, 2006-2012 Free Software Foundation, Inc. |
+ Copyright (C) 1998-2013 Free Software Foundation, Inc. |
Contributed by Hewlett-Packard Company. |
@@ -28,7 +28,8 @@ |
#include "target.h" |
#include "top.h" |
#include "gdb-demangle.h" |
-#include "gdb_string.h" |
+#include <string.h> |
+#include "source.h" |
#include "tui/tui.h" |
#include "tui/tui-data.h" |
#include "tui/tui-stack.h" |
@@ -44,12 +45,12 @@ |
Returns a pointer to a static area holding the result. */ |
static char *tui_get_function_from_frame (struct frame_info *fi); |
-/* Set the filename portion of the locator. */ |
-static void tui_set_locator_filename (const char *filename); |
+/* Set the full_name portion of the locator. */ |
+static void tui_set_locator_fullname (const char *fullname); |
/* Update the locator, with the provided arguments. */ |
static void tui_set_locator_info (struct gdbarch *gdbarch, |
- const char *filename, |
+ const char *fullname, |
const char *procname, |
int lineno, CORE_ADDR addr); |
@@ -94,7 +95,7 @@ tui_make_status_line (struct tui_locator_element *loc) |
/* Translate line number and obtain its size. */ |
if (loc->line_no > 0) |
- sprintf (line_buf, "%d", loc->line_no); |
+ xsnprintf (line_buf, sizeof (line_buf), "%d", loc->line_no); |
else |
strcpy (line_buf, "??"); |
line_width = strlen (line_buf); |
@@ -276,27 +277,27 @@ tui_show_locator_content (void) |
/* Set the filename portion of the locator. */ |
static void |
-tui_set_locator_filename (const char *filename) |
+tui_set_locator_fullname (const char *fullname) |
{ |
struct tui_gen_win_info *locator = tui_locator_win_info_ptr (); |
struct tui_locator_element *element; |
if (locator->content[0] == NULL) |
{ |
- tui_set_locator_info (NULL, filename, NULL, 0, 0); |
+ tui_set_locator_info (NULL, fullname, NULL, 0, 0); |
return; |
} |
element = &((struct tui_win_element *) |
locator->content[0])->which_element.locator; |
- element->file_name[0] = 0; |
- strcat_to_buf (element->file_name, MAX_LOCATOR_ELEMENT_LEN, filename); |
+ element->full_name[0] = 0; |
+ strcat_to_buf (element->full_name, MAX_LOCATOR_ELEMENT_LEN, fullname); |
} |
/* Update the locator, with the provided arguments. */ |
static void |
tui_set_locator_info (struct gdbarch *gdbarch, |
- const char *filename, |
+ const char *fullname, |
const char *procname, |
int lineno, |
CORE_ADDR addr) |
@@ -318,14 +319,14 @@ tui_set_locator_info (struct gdbarch *gdbarch, |
element->line_no = lineno; |
element->addr = addr; |
element->gdbarch = gdbarch; |
- tui_set_locator_filename (filename); |
+ tui_set_locator_fullname (fullname); |
} |
-/* Update only the filename portion of the locator. */ |
+/* Update only the full_name portion of the locator. */ |
void |
-tui_update_locator_filename (const char *filename) |
+tui_update_locator_fullname (const char *fullname) |
{ |
- tui_set_locator_filename (filename); |
+ tui_set_locator_fullname (fullname); |
tui_show_locator_content (); |
} |
@@ -348,11 +349,12 @@ tui_show_frame_info (struct frame_info *fi) |
find_frame_sal (fi, &sal); |
source_already_displayed = sal.symtab != 0 |
- && tui_source_is_displayed (sal.symtab->filename); |
+ && tui_source_is_displayed (symtab_to_fullname (sal.symtab)); |
if (get_frame_pc_if_available (fi, &pc)) |
tui_set_locator_info (get_frame_arch (fi), |
- sal.symtab == 0 ? "??" : sal.symtab->filename, |
+ (sal.symtab == 0 |
+ ? "??" : symtab_to_fullname (sal.symtab)), |
tui_get_function_from_frame (fi), |
sal.line, |
pc); |