Opened 9 years ago

Closed 9 years ago

Last modified 8 years ago

#3814 closed defect (fixed)

SpreadLayout: error when removing child from container before allocation has happened

Reported by: erikos Owned by: erikos
Priority: Unspecified by Maintainer Milestone:
Component: Sugar Version: 0.97.x
Severity: Major Keywords: nohippo
Cc: Distribution/OS: OLPC
Bug Status: Assigned

Description

Traceback:

1345376299.434484 DEBUG root: Activity._name_owner_changed_cb: activity org.laptop.Activity5ba339bf874b65d8023c07051c5dc2d64a032bf9 started up
1345376299.770774 DEBUG root: window registered for 5ba339bf874b65d8023c07051c5dc2d64a032bf9
1345376299.771919 DEBUG root: 5ba339bf874b65d8023c07051c5dc2d64a032bf9 launched in 0.715939 seconds.
Traceback (most recent call last):
  File "/home/erikos/sugar-build/install/lib/python2.7/site-packages/jarabe/desktop/viewcontainer.py", line 59, in do_remove
    self._layout.remove(child)
  File "/home/erikos/sugar-build/install/lib/python2.7/site-packages/jarabe/desktop/favoriteslayout.py", line 153, in remove
    if self._grid.is_in_grid(child):
AttributeError: 'NoneType' object has no attribute 'is_in_grid'
1345376351.018891 DEBUG root: autoconnect Sugar Ad-hoc: already connected

Steps to reproduce:

  • start Sugar
  • open Log
  • wait until one of the items on the Neighborhood View disappears (e.g. an Access Point is not in reach anymore), the important part is that you have not shown the Neighborhood View yet before the item is removed

A grid is added to the ViewContainer when the children are allocated. The allocation happens when the children needs to be shown. Therefore if the container and it's children have not been shown yet, removing the child from the grid will fail.

Change History (3)

comment:2 Changed 9 years ago by erikos

  • Resolution set to fixed
  • Status changed from new to closed

72052bdc54fb3bf0051d617bd41f961907a7c208 is in 0.97.1.

comment:3 Changed 8 years ago by dnarvaez

  • Milestone 0.98 deleted

Milestone 0.98 deleted

Note: See TracTickets for help on using tickets.