Windows CGI handler returns \r\r\n header

30 views
Skip to first unread message

Randy M

unread,
Jul 22, 2012, 11:03:23 PM7/22/12
to rack-...@googlegroups.com
Hello everyone.

I'm using rack (1.4.1) on Windows rubyinstaller.org version.
I encountered Handler::CGI trouble.
Response header becomes \r\r\n.

= code =
#!ruby
require "rubygems"
require "rack"
class HelloRack
def call(env)
req = Rack::Request.new(env)
return [200, {"Content-Type" => "text/plain"},
"Hello, Rack\n" + req.params.inspect ]
end
end
Rack::Handler::CGI.run HelloRack.new

= output =
Status: 200\r\r\nContent-Type: text/plain\r\r\n\r\r\nHello, Rack\r\n{}

= version =
E:\>ruby -v
ruby 1.8.7 (2012-06-29 patchlevel 370) [i386-mingw32]
E:\tmp>gem list
rack (1.4.1)


Could anyone tell me idea?

----------
Randy Michaels
randy_m...@aol.com

Magnus Holm

unread,
Jul 31, 2012, 4:38:44 AM7/31/12
to rack-...@googlegroups.com
I think we need a $stdout.binmode (after $stdin.binmode) here:
https://github.com/rack/rack/blob/master/lib/rack/handler/cgi.rb

// Magnus Holm

Randy M

unread,
Aug 9, 2012, 3:14:23 AM8/9/12
to rack-...@googlegroups.com
 Yes, it is right fix in windows enviroment. 
 Thanks. It is happy if this fix has merged.
Reply all
Reply to author
Forward
0 new messages