Hi,

Luke Myers <[EMAIL PROTECTED]> writes:

[ a bunch of stuff in HTML ]

it would be appreciated if you refrained from posting HTML messages to
this list...  I'll try and respond, though:

> The "Dtcl_Script ErrorScript" directive is not working the way I
> expected.  &nbsp;From the documentation, and successful use of
> GlobalInitScrip, tChildInitScript,<code></code>
> &nbsp;ChildExitScript, I did not expect any error output to the
> client. &nbsp;I assumed that ErrorScript would be evaluated in lieu
> of sending the normal error message sent to the
> client. &nbsp;Indeed, I cannot find any evidence of ErrorScript
> being &nbsp;evaluated.<br>

It is evaluated, although at present, it doesn't hide the current
output.  I.e. if you've already output a lot of stuff, it will still
be there.

> Here's the section from httpd.conf:<br>

> Dtcl_Script ErrorScript "source /opt/www/forming/products/error.tcl"<br>

> Here &nbsp;are the permissions of the scripts:<br>

> Am I simply misunderstanding the documentation relating to ErrorScript? &nbsp;My
> objective in using ErrorScript is twofold, 1.) to hide the Tcl stack trace
> from the user. &nbsp;2.) to provide an alternate error message in a form so the
> user could it as an error report.<br>

That's what it should be doing.  What behaviour are you getting?

Oops, let me guess... try this experiment: hit reload on the page a
few times and see if the error script you were intending to create
pops out.

It's an error that was subsequently caught in Rivet.  Here is a patch:

diff -u -r1.53 mod_dtcl.c
--- mod_dtcl.c  19 Nov 2001 11:20:23 -0000      1.53
+++ mod_dtcl.c  18 Apr 2002 12:44:43 -0000
@@ -337,11 +337,10 @@
         }
 /*                  "</pre><b>OUTPUT BUFFER</b><pre>\n",
                     Tcl_GetStringFromObj(outbuf, (int *)NULL));  */
-    } else {
-        /* We make sure to flush the output if buffer_add was the only output *
/
-        print_headers(r);
-        flush_output_buffer(r);
     }
+    /* We make sure to flush the output if buffer_add was the only output */
+    print_headers(r);
+    flush_output_buffer(r);
     return OK;
 }
 
I will upload a new version soon, although I urge any 'early adopter'
types out there to download Rivet via anoncvs (repository: tcl-rivet)
and give it a go.  I will be moving the tcl.apache.org to use Rivet
soon, so it's coming along nicely.

-- 
David N. Welton
   Consulting: http://www.dedasys.com/
     Personal: http://www.dedasys.com/davidw/
Free Software: http://www.dedasys.com/freesoftware/
   Apache Tcl: http://tcl.apache.org/

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to