#2941 BLOC Trial-3: Sugar first-boot path doesn't unfreeze DCON

Zarro Boogs per Child bugtracker at laptop.org
Tue Aug 21 12:48:31 EDT 2007


#2941: Sugar first-boot path doesn't unfreeze DCON
---------------------+------------------------------------------------------
 Reporter:  cscott   |       Owner:  dcbw                             
     Type:  defect   |      Status:  new                              
 Priority:  blocker  |   Milestone:  Trial-3                          
Component:  sugar    |     Version:  Development build as of this date
 Keywords:           |    Verified:  0                                
---------------------+------------------------------------------------------
 When using the "pretty boot" code path, the DCON is frozen to cover X
 startup.

 But on first boot, /usr/share/sugar/shell/intro/intro.py is invoked, and
 it never unfreezes the DCON, so the machine appears to freeze.  Reproduce
 this by booting with the firmware q2c25 or later and build 552 or later
 with the left directional pad held down at powerup.

 I think the fix is to add these three lines:

   from hardware import hardwaremanager
   hw_manager = hardwaremanager.get_manager()
   hw_manager.set_dcon_freeze(0)

 just before the 'gtk.main()' call in the 'if not profile.is_valid():' test
 in /usr/bin/sugar-shell.  The non-first-boot unfreeze code is found in
 /usr/share/sugar/shell/view/Shell.py.  The existing unfreeze code has a
 little buglet in that it freezes just *before* its widgets are realized --
 ideally it would unfreeze after the widgets have been drawn on the screen.
 I think adding the dcon unfreeze before gtk.main() for the first-boot case
 would have this same behavior.  If we figure out a better fix for the
 first boot path, we should probably update the code in Shell.py as well.

 This is a blocker for Trial-3 if we're going to enable pretty boot by
 default for Trial-3.

-- 
Ticket URL: <https://dev.laptop.org/ticket/2941>
One Laptop Per Child <http://laptop.org/>



More information about the Bugs mailing list