Changeset 709
- Timestamp:
- 02/20/05 10:51:10 (4 years ago)
- Files:
-
- trunk/actionpack/lib/action_controller/dependencies.rb (modified) (1 diff)
- trunk/actionpack/lib/action_controller/templates/rescues/_request_and_response.rhtml (modified) (2 diffs)
- trunk/actionpack/lib/action_controller/templates/rescues/diagnostics.rhtml (modified) (1 diff)
- trunk/activesupport/lib/active_support/dependencies.rb (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/actionpack/lib/action_controller/dependencies.rb
r627 r709 71 71 rescue LoadError 72 72 raise LoadError, "Missing #{layer} #{dependency}.rb" 73 rescue Object => exception 74 exception.blame_file! "=> #{layer} #{dependency}.rb" 75 raise 73 76 end 74 77 end trunk/actionpack/lib/action_controller/templates/rescues/_request_and_response.rhtml
r370 r709 1 <% unless @exception.blamed_files.empty? %> 2 <a href="#" onclick="document.getElementById('blame_trace').style.display='block'; return false;">Show blamed files</a> 3 <pre id="blame_trace" style="display:none"><code><%=h @exception.describe_blame %></code></pre> 4 <% end %> 5 1 6 <% if defined?(Breakpoint) %> 2 7 <br /><br /> 3 <% = form_tag({:params => {}, :only_path => true}, "method" => @request.method) %>8 <% begin %><%= form_tag({:params => {}, :only_path => true}, "method" => @request.method) %> 4 9 <input type="hidden" name="BP-RETRY" value="1" /> 5 10 … … 13 18 <input type="submit" value="Retry with Breakpoint" /> 14 19 </form> 20 <% rescue Exception => e %> 21 <%=h "Couldn't render breakpoint link due to #{e.class} #{e.message}" %> 22 <% end %> 15 23 <% end %> 16 24 trunk/actionpack/lib/action_controller/templates/rescues/diagnostics.rhtml
r51 r709 7 7 <h1> 8 8 <%=h @exception.class.to_s %> in 9 <%=h @request.parameters["controller"].capitalize %>#<%=h @request.parameters["action"]%>9 <%=h (@request.parameters["controller"] || "<controller not set>").capitalize %>#<%=h @request.parameters["action"] || "<action not set>" %> 10 10 </h1> 11 11 <p><%=h Object.const_defined?(:RAILS_ROOT) ? @exception.message.gsub(RAILS_ROOT, "") : @exception.message %></p> trunk/activesupport/lib/active_support/dependencies.rb
r624 r709 101 101 102 102 def load_file(file_path) 103 Controllers.module_eval(IO.read(file_path), file_path, 1) # Hard coded Controller line here!!! 103 begin 104 Controllers.module_eval(IO.read(file_path), file_path, 1) # Hard coded Controller line here!!! 105 rescue Object => exception 106 exception.blame_file! file_path 107 raise 108 end 104 109 end 105 110 end … … 126 131 end 127 132 end 133 def load(file, *extras) 134 begin super(file, *extras) 135 rescue Object => exception 136 exception.blame_file! file 137 raise 138 end 139 end 140 def require(file, *extras) 141 begin super(file, *extras) 142 rescue Object => exception 143 exception.blame_file! file 144 raise 145 end 146 end 128 147 end 148 149 # Add file-blaming to exceptions 150 class Exception 151 def blame_file!(file) 152 (@blamed_files ||= []).unshift file 153 end 154 attr_reader :blamed_files 155 def describe_blame 156 return nil if blamed_files.empty? 157 "This error occured while loading the following files:\n #{blamed_files.join '\n '}" 158 end 159 end