[haiku-bugs] Re: [Haiku] #4260: [ScreenSaver] freezes when switching screensavers

  • From: "axeld" <trac@xxxxxxxxxxxx>
  • Date: Wed, 04 Sep 2013 20:19:10 -0000

#4260: [ScreenSaver] freezes when switching screensavers
---------------------------------------+----------------------------
   Reporter:  diver                    |      Owner:  axeld
       Type:  bug                      |     Status:  reopened
   Priority:  normal                   |  Milestone:  R1
  Component:  Preferences/ScreenSaver  |    Version:  R1/Development
 Resolution:                           |   Keywords:
 Blocked By:                           |   Blocking:
Has a Patch:  0                        |   Platform:  All
---------------------------------------+----------------------------

Comment (by axeld):

 I actually see little reason why the ModulesView has to wait until Quit()
 returns, anyway -- once that call is made, the screen saver cannot access
 the window anymore (well, not visually, that is).

 Not that I'm deep into the code, but I think I would add a
 ScreenSaverRunner::QuitAsync() that just sets fQuitting to `true` (and
 call Resume()), and Quit() would just call this one, and wait until the
 thread returns. ModulesView could then call QuitAsync(), and offload the
 destruction of the saver into another thread (ie. only this one would then
 call Quit()).

--
Ticket URL: <http://dev.haiku-os.org/ticket/4260#comment:8>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: