lynx-dev
[Top][All Lists]
Advanced

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

Re: LYNX-DEV fotemods chartrans & SSL


From: Foteos Macrides
Subject: Re: LYNX-DEV fotemods chartrans & SSL
Date: Thu, 23 Oct 1997 19:25:59 -0500 (EST)

Klaus Weide <address@hidden> wrote:
>[...]
>In any case, I believe that no service can rely on specific behavior
>for this, since it hasn't been implemented the same way in clients,
>and specs (or drafts) have been changing.  An author who would expect
>a specific behavior for important or sensitive data would be foolish.

        If the INTERNAL_LINK stuff persists to the next release, that
version of Lynx will be the only browser which behaves that way, the
behavior will not be supported by any RFC or current ID, and it is
not the bug reports to lynx-dev about it which will be foolish.


>> or without -source and/or -preparsed.   So your interdigitated
>> comments still seem inappropriate.
>
>But HTML_start_element() and HTML_end_element() are not any more
>the only functions that may be called by SGML.c's start_element()
>and end_element().
>
>The following is with 2.7.1ac-0.84 (-87 should be the same):
>
>sol:lynx2-7-1aclatest$ gdb lynx
>GDB is free software and you are welcome to distribute copies of it
> under certain conditions; type "show copying" to see the conditions.
>There is absolutely no warranty for GDB; type "show warranty" for details.
>GDB 4.16 (sparc-sun-solaris2.4),
>Copyright 1996 Free Software Foundation, Inc...
>(gdb) break LYCheckForCSI
>Breakpoint 1 at 0x79818: file ./LYCharUtils.c, line 4467.
>(gdb) set args http://www.microsoft.com
>(gdb) run
> [ ... ]
>Read 1460 bytes of data.
>Breakpoint 1, LYCheckForCSI (me=0x14cc78, url=0x14acdc) at ./LYCharUtils.c:4467
>4467        if (!me)
>(gdb) list
>4462    */
>4463    PUBLIC BOOLEAN LYCheckForCSI ARGS2(
>4464            HTStructured *,         me,
>4465            char **,                url)
>4466    {
>4467        if (!me)
>4468            return FALSE;
>4469
>4470        if (!me->isa || strcmp(me->isa->name, "Lynx_HTML_Handler"))
>4471            return FALSE;
>(gdb) print *me
>$1 = {isa = 0xd2660, node_anchor = 0x1495b0, text = 0x14ad78, target = 0x0,
>  targetClass = {name = 0x0, _free = 0, _abort = 0, put_character = 0,
>    put_string = 0, put_block = 0}, CurrentA = 0x1421f8, CurrentANum = 0,
> [ ... ]
>(gdb) print me->isa
>$2 = (HTStructuredClass *) 0xd2660
>(gdb) print *me->isa
>$3 = {name = 0xd2688 "Lynx_HTML_Handler", _free = 0x67630 <HTML_free>,
>  _abort = 0x679f4 <HTML_abort>, put_character = 0x592ec <HTML_put_character>,
>  put_string = 0x59868 <HTML_put_string>, _write = 0x59ca0 <HTML_write>,
>  start_element = 0x59ce4 <HTML_start_element>,
>  end_element = 0x64b58 <HTML_end_element>,
>  put_entity = 0x6755c <HTML_put_entity>}
>(gdb) kill
>Kill the program being debugged? (y or n) y
>(gdb) set args -source -preparsed http://www.microsoft.com
>(gdb) run
> [ ... ]
>Breakpoint 1, LYCheckForCSI (me=0x141900, url=0x141b9c) at ./LYCharUtils.c:4467
>4467        if (!me)
>(gdb) p *me
>$4 = {isa = 0xe689c, node_anchor = 0x1417a0, text = 0xd28d8,
>  target = 0x687e4, targetClass = {name = 0x68e48 "\235c?\220!",
>    _free = 0x68764 <HTFWriter_put_character>,
>    _abort = 0x687ac <HTFWriter_put_string>,
>    put_character = 0x687c4 <HTFWriter_write>,
>    put_string = 0x3c2f5441 <MessageSecs+1008458489>,
>    put_block = 0x424c453e <MessageSecs+1111018486>}, CurrentA = 0xd0a6172,
>  CurrentANum = 2033150317,
> [ ... ]
>(gdb) p me->isa
>$5 = (HTStructuredClass *) 0xe689c
>(gdb) p *me->isa
>$6 = {name = 0xe68c0 "HTMLGen", _free = 0x983e0 <HTMLGen_free>,
>  _abort = 0x98448 <HTMLGen_abort>,
>  put_character = 0x97cb8 <HTMLGen_put_character>,
>  put_string = 0x97ffc <HTMLGen_put_string>, _write = 0x98034 <HTMLGen_write>,
>  start_element = 0x9806c <HTMLGen_start_element>,
>  end_element = 0x982cc <HTMLGen_end_element>,
>  put_entity = 0x98384 <HTMLGen_put_entity>}
>(gdb)

        LYCheckForCSI() is not called when you use -source and have
a target associated with the HTML generator.  It *will* be called when
you have -preparsed without -source, it's appropriate to call it in
that case, will have the appropriate target argument, and it will not
crash.  There was no need to change what you had before in the devel
code.  Could you at least restore that, instead of what you have now
with your interdigitated, false comments?

                                Fote

=========================================================================
 Foteos Macrides            Worcester Foundation for Biomedical Research
 address@hidden         222 Maple Avenue, Shrewsbury, MA 01545
=========================================================================
;
; To UNSUBSCRIBE:  Send a mail message to address@hidden
;                  with "unsubscribe lynx-dev" (without the
;                  quotation marks) on a line by itself.
;

reply via email to

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