On Mon, 20 Mar 2000, Michael Warner wrote:
> I seem to have broken lynx, but I don't know how.
>
> I jumped from dev16 (I'm pretty sure - don't think it was dev18,
> but I can feel premature senility creeping up behind me) to
> dev22. Printing worked in dev16. In dev22 the "Printer Options"
> page always prints, no matter what page I *try* to print. From
> the trace output (excerpted below), I deduce that there's either
> an LYpush(optionspage) that shouldn't be there, or a missing
> LYpop(pagetoprint).
>
> Also, after printing, I end up on the options page instead of
> back on the page-that-was-to-be-printed.
>
> Some things that seem odd to me:
>
> 1) Am I the only one with this problem, or has no one else tried
> printing from dev22?
Apparently (so far), you're the only one.
> 2) The problem seems to be retroactive. I backed out patches
> back to dev16, and printing still didn't work. Then I applied
> patches forward from the last public release. Printing worked
> through dev14, and stopped working in dev15. There's probably
> an obvious explanation, but it's escaping me at the moment. Bit
> rot? Gremlins? User error?
[...]
> HTAccess: `file://localhost/tmp/warner/L18776-1TMP.html' has been accessed.
> GridText: HText_pageDisplay at line 1 started
> GridText: HText_pageDisplay finished
>
> LYpush[1]: address:file://localhost/tmp/warner/L18776-1TMP.html
> title:Printing Options
>
> [^^^Culprit?]
To which Leonid responded:
| Yes, "Printing Options" page should never be pushed.
| Perhaps you have a broken copy of LYHistory.c
| (or LYMainLoop.c and LYPrint.c).
I agree with that. Sounds like you might have some files that
were not recompiled from a previous version.
The logic for determining (among other things) whether a page should
be pushed changed in 2.8.3dev.16 -> dev.17:
* new functions for keeping track of temp files (and some other files) for user
interface pages: LYRegisterUIPage(), LYIsUIPage(). ...
If you ant to trace around a bit:
- Make sure mainloop's ForcePush flag is FALSE when the LYpush in question
occurs (i.e., aftter pressing enter on the LYNXPRINT://TO_SCREEN/lines=15
link).
- Make sure the LYwouldPush() called near the top of LYpush() does return
the right result (i.e. FALSE, in this case). This in turn should follow
from LYIsUIPage(docurl, UIP_PRINT_OPTIONS) returning TRUE.
Klaus