[ic] Interesting Failure Reading Scratch Variables from Session

John Young interchange-users@icdevgroup.org
Wed Jul 17 05:13:04 2002


Here's a funny one that may already be known, or perhaps some value as an FYI:

Newer browsers seem to consistently fail in updating scratch variables
stored in a session file when some other delivery failure (in this case a missing
image file) occurs;  yet Netscape 4.61 does not.  Details below for anyone
interested.  I'm not having a problem with this, because I will insure that
I don't have any missing images.  It's just a little curious (and I hope that
I am coding things properly).  I also don't consider this a bug... just a
behavior anomaly.


Details:

Server: IC 4.8.5, tested with TRAFFIC low and TRAFFIC rpc, apache 1.3.24, Solaris 2.8
Clients: Solaris 2.8 w/Netscape Communicator 4.61 and 6.1
            Linux 2.4.10 w/mozilla .9.9.x and 1.0, opera 5.0, and Galeon 0.12

file.html contains mostly just HTML, except for:

[set whatever]ABC[/set]

in order to store "ABC" in users' sessions for future menu searches.


In the bar_link routine in catalog_before.cfg, after the initial variable declarations,
and just before LINK:, I have:

my $whatever = $Scratch->{whatever};

so that I can include it in menu links.


It works repeatedly on the server browsing with Netscape 4.61.  However,
on the server using Netscape 6.1, as well as on a Linux client using various
versions of mozilla, Opera, and Galeon, it does not seem to store the scratch
variable in the session IF there are failures (at least in the case of missing
images).  Nothing shows up in the IC logs, but the apache logs contain, of course:

... File does not exist: /the/apache/htdocs/blah/images/thumb/filename.jpg

Add /the/apache/htdocs/blah/images/thumb/filename.jpg, and everything is fine.

Please let me know if I seem to be doing something stupid with [set ...] or $Scratch,
otherwise, I'm happy.

-JY