lynx-dev
[Top][All Lists]
Advanced

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

lynx-dev Possible patch for lynx2.8.5dev.16


From: Doug Kaufman
Subject: lynx-dev Possible patch for lynx2.8.5dev.16
Date: Sat, 20 Dec 2003 18:43:41 -0800 (PST)

While testing a DJGPP binary of lynx I got a crash which I have not
been able to reproduce. Nonetheless, analysis of the crash traceback
suggests a possible attempt to free an item that wasn't malloc'd. This
lynx binary was built with patches 16a, 16b, 16c6, and 16c7a-iz. Here
is the crash traceback:

  0x002b498f free+119, file malloc.c
Page fault at eip=002b498f, error=0004
eax=772000e8 ebx=003addd6 ecx=003addd6 edx=7751dc5c esi=003ade4c edi=ddc8003a
ebp=ffd0a5f8 esp=ffd0a5ec program=D:\DJGPP\LYNX28~1.16\LYNX2-~1\LYNX.EXE
cs: sel=00f7  base=836b3000  limit=ffd1afff
ds: sel=00ff  base=836b3000  limit=ffd1afff
es: sel=00ff  base=836b3000  limit=ffd1afff
fs: sel=010f  base=00000000  limit=0010ffff
gs: sel=010f  base=00000000  limit=0010ffff
ss: sel=00ff  base=836b3000  limit=ffd1afff
App stack: [ffd0b000..ffc8b000]  Exceptn stack: [0037bbfc..00379cbc]
 
Call frame traceback EIPs:
  0x002b498f free+119, file malloc.c
  0x000be669 HTAnchor_delete+137, file HTAnchor.c, line 699
  0x000be5ab deleteLinks+75, file HTAnchor.c, line 587
  0x000be7b1 HTAnchor_delete_links+65, file HTAnchor.c, line 735
  0x00010fea HText_free+202, file GridText.c, line 1238
  0x0001c9e0 HTuncache_current_document+96, file GridText.c, line 8636
  0x00037eb6 handle_PREV_DOC+534, file LYMainLoop.c, line 4057
  0x0003ad17 mainloop+3063, file LYMainLoop.c, line 7097
  0x0002a3ab main+3739, file LYMain.c, line 2075
  0x002b31a8 __crt1_startup+176, file crt1.c


Does the following patch make sense as an attempt to fix this? I can't
test, since I can't produce the crash again.

--- lynx2.8.5dev.16/lynx2-8-5/www/Library/Implementation/HTAnchor.c.ori 
2003-06-01 17:16:28.000000000 -0800
+++ lynx2.8.5dev.16/lynx2-8-5/www/Library/Implementation/HTAnchor.c     
2003-12-20 18:27:34.000000000 -0800
@@ -582,7 +582,7 @@
         *  Test here to avoid calling overhead.
         *  Don't delete if document is loaded or being loaded.
         */
-       if ((me->parent != parent) && !parent->underway &&
+       if (parent && (me->parent != parent) && !parent->underway &&
            (!parent->info || !parent->info->document)) {
            HTAnchor_delete(parent);
        }

This lynx binary was built with patches 16a, 16b, 16c6, and 16c7a-iz.
 
                                     Doug

-- 
Doug Kaufman
Internet: address@hidden


; To UNSUBSCRIBE: Send "unsubscribe lynx-dev" to address@hidden

reply via email to

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