GTG

Creating a cycle dependency using Drag'n'Drop shouldn't be allowed

Bug #806927 reported by Izidor Matušov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
GTG
Fix Released
Critical
Izidor Matušov

Bug Description

Let have a tasks like his:

A_node
  B_node
    C_node

If I drag A_node under C_node, GTG should ignore the action/show warning or error message.

Actual reaction: The names of tasks are changed to "" (blank) and a huge traceback is shown in the console:
<traceback>
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/task.py", line 266, in get_due_date
    pardate = self.req.get_task(par).get_due_date()
  File "/home/iyo/projekte/gtg/GTG/core/requester.py", line 117, in get_task
    task = self.ds.get_task(tid)
  File "/home/iyo/projekte/gtg/GTG/core/datastore.py", line 242, in get_task
    if self.has_task(tid):
  File "/home/iyo/projekte/gtg/GTG/core/datastore.py", line 231, in has_task
    return self.__tasks.has_node(tid)
  File "/home/iyo/projekte/gtg/GTG/tools/liblarch/__init__.py", line 64, in has_node
    return self.__tree.has_node(nid)
RuntimeError: maximum recursion depth exceeded
</traceback>

Tags: liblarch
Izidor Matušov (izidor)
Changed in gtg:
status: New → In Progress
Changed in gtg:
milestone: 0.3 → 0.2.9
status: In Progress → Fix Committed
Izidor Matušov (izidor)
Changed in gtg:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.