* tuiSourceWin.c (tuiSetIsExecPointAt): Redraw the previous and
authorStephane Carrez <stcarrez@nerim.fr>
Fri, 30 Aug 2002 21:49:49 +0000 (21:49 +0000)
committerStephane Carrez <stcarrez@nerim.fr>
Fri, 30 Aug 2002 21:49:49 +0000 (21:49 +0000)
current line.

gdb/tui/ChangeLog
gdb/tui/tuiSourceWin.c

index d0435e764f067fb7de038b9ce92312e392a6bf56..04e94bf9c594f259df33d352e22440676cdd3a02 100644 (file)
@@ -1,3 +1,8 @@
+2002-08-31  Stephane Carrez  <stcarrez@nerim.fr>
+
+       * tuiSourceWin.c (tuiSetIsExecPointAt): Redraw the previous and
+       current line.
+
 2002-08-31  Stephane Carrez  <stcarrez@nerim.fr>
 
        * tuiSource.c (tuiSetSourceContent): Remove old breakpoint code.
index 04f778cfa4162be7c31ef51fed36b39a99931e52..93cdbb761c53941d27d23f8e17f01660378dc33f 100644 (file)
@@ -375,28 +375,34 @@ tuiHorizontalSourceScroll (TuiWinInfoPtr winInfo,
 }                              /* tuiHorizontalSourceScroll */
 
 
-/*
-   ** tuiSetHasExecPointAt().
-   **        Set or clear the hasBreak flag in the line whose line is lineNo.
- */
+/* Set or clear the hasBreak flag in the line whose line is lineNo.  */
 void
 tuiSetIsExecPointAt (TuiLineOrAddress l, TuiWinInfoPtr winInfo)
 {
+  int changed = 0;
   int i;
   TuiWinContent content = (TuiWinContent) winInfo->generic.content;
 
   i = 0;
   while (i < winInfo->generic.contentSize)
     {
+      int newState;
+
       if (content[i]->whichElement.source.lineOrAddr.addr == l.addr)
-       content[i]->whichElement.source.isExecPoint = TRUE;
+        newState = TRUE;
       else
-       content[i]->whichElement.source.isExecPoint = FALSE;
+       newState = FALSE;
+      if (newState != content[i]->whichElement.source.isExecPoint)
+        {
+          changed++;
+          content[i]->whichElement.source.isExecPoint = newState;
+          tui_show_source_line (winInfo, i + 1);
+        }
       i++;
     }
-
-  return;
-}                              /* tuiSetIsExecPointAt */
+  if (changed)
+    tuiRefreshWin (&winInfo->generic);
+}
 
 /* Update the execution windows to show the active breakpoints.
    This is called whenever a breakpoint is inserted, removed or