[v2,2/2,gdb/tui] Simplify tui_update_variables

Message ID 20230608091714.19546-2-tdevries@suse.de
State Committed
Headers
Series [v2,1/2] Add template functions assign_return/set_if_changed |

Commit Message

Tom de Vries June 8, 2023, 9:17 a.m. UTC
  Simplify tui_update_variables by using template function
assign_return_if_changed.

Tested on x86_64-linux.
---
 gdb/tui/tui-win.c | 22 +++++++---------------
 1 file changed, 7 insertions(+), 15 deletions(-)
  

Patch

diff --git a/gdb/tui/tui-win.c b/gdb/tui/tui-win.c
index 71f961e04d2..3e2605ff24a 100644
--- a/gdb/tui/tui-win.c
+++ b/gdb/tui/tui-win.c
@@ -284,28 +284,20 @@  tui_update_variables ()
   struct tui_translate *entry;
 
   entry = translate (tui_border_mode, tui_border_mode_translate);
-  if (tui_border_attrs != entry->value)
-    {
-      tui_border_attrs = entry->value;
-      need_redraw = true;
-    }
+  need_redraw
+    |= assign_return_if_changed<int> (tui_border_attrs, entry->value);
+
   entry = translate (tui_active_border_mode, tui_border_mode_translate);
-  if (tui_active_border_attrs != entry->value)
-    {
-      tui_active_border_attrs = entry->value;
-      need_redraw = true;
-    }
+  need_redraw
+    |= assign_return_if_changed<int> (tui_active_border_attrs, entry->value);
 
   /* If one corner changes, all characters are changed.
      Only check the first one.  The ACS characters are determined at
      run time by curses terminal management.  */
   entry = translate (tui_border_kind, tui_border_kind_translate_lrcorner);
   int val = (entry->value < 0) ? ACS_LRCORNER : entry->value;
-  if (tui_border_lrcorner != (chtype) val)
-    {
-      tui_border_lrcorner = val;
-      need_redraw = true;
-    }
+  need_redraw |= assign_return_if_changed<chtype> (tui_border_lrcorner, val);
+
   entry = translate (tui_border_kind, tui_border_kind_translate_llcorner);
   tui_border_llcorner = (entry->value < 0) ? ACS_LLCORNER : entry->value;