Projects

Ticket #753 (closed defect: fixed)

Opened 20 months ago

Last modified 19 months ago

An error occurs when access to Webrick's HTTPServer.

Reported by: watson1978@… Owned by: lsansonetti@…
Priority: blocker Milestone: MacRuby 0.7
Component: MacRuby Keywords:
Cc:

Description

$ cat test_webrick.rb    
require 'webrick'
include WEBrick

root_dir = "./"
s = HTTPServer.new(
    :Port => 8000, 
    :DocumentRoot => File.join(Dir::pwd, root_dir)
)
trap("INT"){ s.shutdown }
s.start

An error occurs when I access to HTTPServer with a browser.

$ macruby test_webrick.rb
[2010-06-19 11:21:30] INFO  WEBrick 1.3.1
[2010-06-19 11:21:30] INFO  ruby 1.9.2 (2008-06-03) [universal-darwin10.0]
[2010-06-19 11:21:30] INFO  WEBrick::HTTPServer#start: pid=2222 port=8000
[2010-06-19 11:21:43] ERROR WEBrick::HTTPStatus::RequestURITooLarge
[2010-06-19 11:21:43] ERROR RuntimeError: string frozen
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/httpresponse.rb:172:in `block'
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/httpresponse.rb:169:in `send_header:'
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/httpresponse.rb:101:in `send_response:'
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/httpserver.rb:45:in `run:'
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/server.rb:174:in `block'
[2010-06-19 11:21:44] ERROR TypeError: no implicit conversion to float from nil
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/accesslog.rb:26:in `setup_params:'
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/httpserver.rb:164:in `access_log:'
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/httpserver.rb:45:in `run:'
        /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/1.9.2/webrick/server.rb:174:in `block'

Change History

Changed 19 months ago by watson1978@…

Since r4338, Assertion fails:

$ macruby test_webrick.rb 
[2010-07-09 16:54:02] INFO  WEBrick 1.3.1
[2010-07-09 16:54:02] INFO  ruby 1.9.2 (2008-06-03) [universal-darwin10.0]
[2010-07-09 16:54:02] INFO  WEBrick::HTTPServer#start: pid=57582 port=8000
Assertion failed: ((b->flags & flags) == flags), function rb_vm_prepare_block, file dispatcher.cpp, line 1343.
zsh: abort      macruby test_webrick.rb

Changed 19 months ago by watson1978@…

When Assertion failed by line 1341 of dispatch.cpp, it was as follows.

  • b->flags = 0
  • flags = 64

But Test Script worked when line 1341 of dispatch.cpp was deleted.
Is a "assert((b->flags & flags) == flags);" necessary?

Changed 19 months ago by watson1978@…

It seems that this issue depend on #620.

Changed 19 months ago by watson1978@…

This issue did not reproduce with r4379. Thank you! :)

Changed 19 months ago by lsansonetti@…

  • status changed from new to closed
  • resolution set to fixed
  • milestone set to MacRuby 0.7

Thanks for notifying, closing :)

Note: See TracTickets for help on using tickets.