diff options
-rw-r--r-- | actionpack/CHANGELOG | 2 | ||||
-rw-r--r-- | actionpack/lib/action_controller/rescue.rb | 11 |
2 files changed, 9 insertions, 4 deletions
diff --git a/actionpack/CHANGELOG b/actionpack/CHANGELOG index 1e62def587..99fdd9ddfe 100644 --- a/actionpack/CHANGELOG +++ b/actionpack/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Changed that uncaught exceptions raised any where in the application will cause RAILS_ROOT/public/500.html to be read and shown instead of just the static "Application error (Rails)" [DHH] + * Integration tests: thoroughly test ActionController::Integration::Session. #6022 [Kevin Clark] (tests skipped unless you `gem install mocha`) diff --git a/actionpack/lib/action_controller/rescue.rb b/actionpack/lib/action_controller/rescue.rb index dd670fe96d..f9b831f18b 100644 --- a/actionpack/lib/action_controller/rescue.rb +++ b/actionpack/lib/action_controller/rescue.rb @@ -48,9 +48,10 @@ module ActionController #:nodoc: # Overwrite to implement public exception handling (for requests answering false to <tt>local_request?</tt>). def rescue_action_in_public(exception) #:doc: case exception - when RoutingError, UnknownAction then + when RoutingError, UnknownAction render_text(IO.read(File.join(RAILS_ROOT, 'public', '404.html')), "404 Not Found") - else render_text "<html><body><h1>Application error (Rails)</h1></body></html>" + else + render_text(IO.read(File.join(RAILS_ROOT, 'public', '500.html')), "500 Internal Error") end end @@ -125,8 +126,10 @@ module ActionController #:nodoc: def response_code_for_rescue(exception) case exception - when UnknownAction, RoutingError then "404 Page Not Found" - else "500 Internal Error" + when UnknownAction, RoutingError + "404 Page Not Found" + else + "500 Internal Error" end end |