Posted to tcl by hypnotoad at Tue Oct 08 21:23:18 GMT 2019view raw
- method DoOutput {} {
- my variable reply_body chan
- if {$chan eq {}} return
- catch {
- # Causing random issues. Technically a socket is always open for read and write
- # anyway
- #my wait writable $chan
- chan configure $chan -encoding utf-8 -translation {auto crlf}
- set REPLY [encoding convertto utf-8 $reply_body]
- ###
- # Return dynamic content
- ###
- set length [string length $REPLY]
- set result {}
- if {${length} > 0} {
- my reply set Content-Length $length
- append result [my reply output] \n
- append result $REPLY
- } else {
- append result [my reply output]
- }
- chan puts -nonewline $chan $result
- catch {chan flush $chan}
- my log HttpAccess {}
- } err
- }