mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-26 03:58:49 +01:00
quick fix #1295. Limit the dependency tree depth shown to prevent stack overflow
TODO: eliminate recusive algoritm
This commit is contained in:
parent
2654fdcf8c
commit
88729f57ce
2 changed files with 17 additions and 10 deletions
|
|
@ -5,6 +5,7 @@ suppress_dependencies ||= false
|
|||
parameters = "_source_view=#{@source_view}"
|
||||
parameters += "&_tag_name=#{@tag_name}" if @source_view == 'tag'
|
||||
@z_index_counter = @z_index_counter - 1 # for IE z-index bug
|
||||
@rec_depth ||= 0
|
||||
%>
|
||||
<div id="<%= dom_id(successor, 'successor') %>" class="item-container">
|
||||
<div id="<%= dom_id(successor, 'successor_line') %>">
|
||||
|
|
@ -13,16 +14,21 @@ parameters += "&_tag_name=#{@tag_name}" if @source_view == 'tag'
|
|||
|
||||
<%= remote_delete_dependency(successor, predecessor) %>
|
||||
|
||||
<% unless successor.pending_successors.empty? %>
|
||||
<div class="todo_successors" id="<%= dom_id(successor, 'successors') %>">
|
||||
<%= render :partial => "todos/successor",
|
||||
:collection => successor.pending_successors,
|
||||
:locals => { :todo => successor,
|
||||
:parent_container_type => parent_container_type,
|
||||
:suppress_dependencies => true,
|
||||
:predecessor => successor }
|
||||
%>
|
||||
</div>
|
||||
<% unless successor.pending_successors.empty?
|
||||
if @rec_depth < 8
|
||||
@rec_depth+=1 %>
|
||||
<div class="todo_successors" id="<%= dom_id(successor, 'successors') %>">
|
||||
<%= render :partial => "todos/successor",
|
||||
:collection => successor.pending_successors,
|
||||
:locals => { :todo => successor,
|
||||
:parent_container_type => parent_container_type,
|
||||
:suppress_dependencies => true,
|
||||
:predecessor => successor }
|
||||
%>
|
||||
</div>
|
||||
<% else %>
|
||||
<a title="There are more dependencies that are not shown">[...]</a>
|
||||
<% end %>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ suppress_edit_button ||= todo.completed?
|
|||
parameters = "_source_view=#{@source_view}"
|
||||
parameters += "&_tag_name=#{@tag_name}" if @source_view == 'tag'
|
||||
@z_index_counter = @z_index_counter - 1 # for IE z-index bug
|
||||
@rec_depth=0 # to prevent stack overflow on large dependency trees, see _successor.html.erb
|
||||
%>
|
||||
<div id="<%= dom_id(todo) %>" class="item-container">
|
||||
<div id="<%= dom_id(todo, 'line') %>" class="item-show">
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue