(set_fallback_viewport): Make code easier to understand.
authorBen Pfaff <blp@gnu.org>
Tue, 25 Sep 2007 04:19:11 +0000 (04:19 +0000)
committerBen Pfaff <blp@gnu.org>
Tue, 25 Sep 2007 04:19:11 +0000 (04:19 +0000)
(get_termcap_viewport): Ditto.
Reviewed by John Darrington.

src/ui/terminal/ChangeLog
src/ui/terminal/main.c

index f7983110fdb801efbf9ed4888083ec88eccf78d2..59c9491853891839a0e9bbcb80281b567b993fc0 100644 (file)
@@ -1,3 +1,9 @@
+2007-09-24  Ben Pfaff  <blp@gnu.org>
+
+       * main.c (set_fallback_viewport): Make code easier to understand.
+       (get_termcap_viewport): Ditto.
+       Reviewed by John Darrington.
+
 2007-09-19  John Darrington <john@darrington.wattle.id.au>
 
        * main.c: Moved get_termcap_viewport from src/data/settings.c 
index b25350b94c4f07c6c6b21f8183697ba9a21d5a88..ad76cb1a43e361d467b4379d293076ddc97bdb54 100644 (file)
@@ -233,26 +233,31 @@ terminate (bool success)
 }
 
 \f
-
 #include "error.h"
 
 #include "gettext.h"
 #define _(msgid) gettext (msgid)
 
+/* If view_width or view_length has not yet been set to a
+   reasonable value, takes a guess. */
 static void
 set_fallback_viewport (void)
 {
-  if (view_width < 0 && getenv ("COLUMNS") != NULL)
-    view_width = atoi (getenv ("COLUMNS"));
-
-  if (view_length < 0 && getenv ("LINES") != NULL)
-    view_length = atoi (getenv ("LINES"));
-
-  if (view_width < 0)
-    view_width = 79;
+  if (view_width <= 0)
+    {
+      if (getenv ("COLUMNS") != NULL)
+        view_width = atoi (getenv ("COLUMNS"));
+      if (view_width <= 0)
+        view_width = 79;
+    }
 
-  if (view_length < 0)
-    view_length = 24;
+  if (view_length <= 0)
+    {
+      if (getenv ("LINES") != NULL)
+        view_length = atoi (getenv ("LINES"));
+      if (view_length <= 0)
+        view_length = 24;
+    }
 }
 
 /* Code that interfaces to ncurses.  This must be at the very end
@@ -268,23 +273,20 @@ get_termcap_viewport (int sig UNUSED)
 {
   char term_buffer [16384];
 
-  if (getenv ("TERM") == NULL)
-    goto fallback;
-
-  else if (tgetent (term_buffer, getenv ("TERM")) <= 0)
+  if (getenv ("TERM") != NULL)
     {
-      error (0,0, _("could not access definition for terminal `%s'"),
-             getenv ("TERM"));
-      goto fallback;
+      if (tgetent (term_buffer, getenv ("TERM")) > 0)
+        {
+          if (tgetnum ("li") > 0)
+            view_length = tgetnum ("li");
+          if (tgetnum ("co") > 1)
+            view_width = tgetnum ("co") - 1;
+        }
+      else
+        error (0, 0, _("could not access definition for terminal `%s'"),
+               getenv ("TERM"));
     }
 
-  if (tgetnum ("li") > 0)
-    view_length = tgetnum ("li");
-
-  if (tgetnum ("co") > 1)
-    view_width = tgetnum ("co") - 1;
-
- fallback:
   set_fallback_viewport ();
 }