gdb/
authorJan Kratochvil <jan.kratochvil@redhat.com>
Thu, 14 Mar 2013 14:35:17 +0000 (14:35 +0000)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Thu, 14 Mar 2013 14:35:17 +0000 (14:35 +0000)
* source.c (print_source_lines_base): Suppress "file" for TUI.

gdb/ChangeLog
gdb/source.c

index 2d911aad6616af6a3a84b17a3e7e9054a509d717..6bb1f44ff9c4907526ec20aec58a78bb13de4d38 100644 (file)
@@ -1,3 +1,8 @@
+2013-03-14  Hui Zhu  <hui_zhu@mentor.com>
+           Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * source.c (print_source_lines_base): Suppress "file" for TUI.
+
 2013-03-14  Keith Seitz  <keiths@redhat.com>
            Alan Matsuoka  <alanm@redhat.com>
 
index f5949e6ee88ba5c2b07931e6530758bb6afe1654..b154dfe61779a9d3543b13eb45e93b8fc5cf9163 100644 (file)
@@ -1344,11 +1344,15 @@ print_source_lines_base (struct symtab *s, int line, int stopline,
        {
          ui_out_field_int (uiout, "line", line);
          ui_out_text (uiout, "\tin ");
-         ui_out_field_string (uiout, "file",
-                              symtab_to_filename_for_display (s));
 
-         /* TUI expects the "fullname" field.  While it is
-            !ui_out_is_mi_like_p compared to CLI it is !ui_source_list.  */
+         /* CLI expects only the "file" field.  TUI expects only the
+            "fullname" field (and TUI does break if "file" is printed).
+            MI expects both fields.  ui_source_list is set only for CLI,
+            not for TUI.  */
+         if (ui_out_is_mi_like_p (uiout)
+             || ui_out_test_flags (uiout, ui_source_list))
+           ui_out_field_string (uiout, "file",
+                                symtab_to_filename_for_display (s));
          if (ui_out_is_mi_like_p (uiout)
              || !ui_out_test_flags (uiout, ui_source_list))
            {
@@ -1356,6 +1360,7 @@ print_source_lines_base (struct symtab *s, int line, int stopline,
 
              ui_out_field_string (uiout, "fullname", fullname);
            }
+
          ui_out_text (uiout, "\n");
        }