Ouch - it looks like the Windows Tcl library initialization is broken
in a slightly different way on Windows than its broken on Unix (for threads).
I had to do the following to get it to work. Until I can put out 3.0.1, do
this:
In lib/thread.tcl, add a command to initialize tcl_library. I added the
first of these three Thread_Send commands:
# Set up auto_loading. These steps may become redundent once the
# TclpSetLibraryPath code works correctly in threads.
Thread_Send $id \
[list set tcl_library $tcl_library]
Thread_Send $id \
{source $tcl_library/init.tcl}
Thread_Send $id \
[list set auto_path $auto_path]
Second, in bin/httpdthread.tcl, I had to add this (it's a bit of a mystery
why it worked at all on Unix without this...), right after the
"package require log"
if {$Config(threads) > 0} {
package require Thread ;# C extension
package require threadmgr ;# Tcl layer on top
}
What the heck - I'll attach both files to this message.
>>>"David LeBlanc" said:
> Hi;
>
> (this is an addition to the email I just posted.)
>
> This is what you see on a console:
>
> [K:/tcl/apps/tclhttpd3.0.0/bin]% tclsh83 httpd.tcl -debug 1
> auto_path:
> K:/tcl/lib/tcl8.3
> K:/tcl/lib
> K:/tcl/apps/tclhttpd3.0.0/bin/../lib
> K:/tcl/lib/tcllib0.4
> K:/tcl/apps/tclhttpd3.0.0/bin/../htdocs/libtml
> can't find package limit
> Running with default file descriptor limit
> Threads enabled
> No .htaccess support: can't find package crypt
> httpd started on port 8015
>
> httpd % Thread starting.
> Thread starting.
> Thread starting.
>
> Each of the "Thread starting." lines corresponds to an attempt to access the
> server.
>
> Dave LeBlanc
>
-- Brent Welch <[EMAIL PROTECTED]>
http://www.scriptics.com
Scriptics: The Tcl Platform Company
thread.tcl
httpdthread.tcl