lynx-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Lynx-dev] Re: lynx hangs II: the return


From: Paul B. Mahol
Subject: Re: [Lynx-dev] Re: lynx hangs II: the return
Date: Tue, 26 Feb 2008 18:15:27 +0100

On 2/26/08, Thomas Dickey <address@hidden> wrote:
> I looked into this a little last night, and see that it's likely a
> problem comparing signed/unsigned values somewhere. I made a workaround
> which is in the lynx-patch in ftp://invisible-island.net/temp/
> diff -Nur lynx2-8-7 lynx2-8-7Y

Please recheck this patch.

Files lynx2-8-7/src/.TRSTable.c.swp and lynx2-8-7Y/src/.TRSTable.c.swp differ
diff -Nur lynx2-8-7/src/TRSTable.c lynx2-8-7Y/src/TRSTable.c
--- lynx2-8-7/src/TRSTable.c    2005-10-17 02:17:20.000000000 +0200
+++ lynx2-8-7Y/src/TRSTable.c   2008-02-26 17:49:58.000000000 +0100
@@ -957,6 +957,20 @@
     int growby;
     int i;

+    if (colspan > TRST_MAXCOLSPAN) {
+       CTRACE2(TRACE_TRST,
+                      (tfp,
+                       "TRST:*** COLSPAN=%d is too large, ignored!\n",
+                       colspan));
+       return -1;
+    }
+    if (rowspan > TRST_MAXROWSPAN) {
+       CTRACE2(TRACE_TRST,
+                      (tfp,
+                       "TRST:*** ROWSPAN=%d is too large, ignored!\n",
+                       rowspan));
+       return -1;
+    }
     if (me->nrows <= 0)
        return -1;              /* must already have at least one row */

@@ -1223,7 +1237,7 @@
     me->cells[me->ncells - 1].colspan : 1;

     if (ncolinfo == 0 || me->ncells + last_colspan > ncolinfo) {
-       colspan = HTMAX(TRST_MAXCOLSPAN,
+       colspan = HTMIN(TRST_MAXCOLSPAN, /* this have more sense to me */
                        ncols_sofar - (me->ncells + last_colspan - 1));
     } else {
        for (i = me->ncells + last_colspan - 1; i < ncolinfo - 1; i++)
@@ -1231,6 +1245,9 @@
                break;
        colspan = i - (me->ncells + last_colspan - 2);
     }
+    CTRACE2(TRACE_TRST,
+           (tfp, "TRST:get_remaining_colspan; colspan = %d\n",
+            colspan));
     return colspan;
 }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]