#10016 LOW 1.5-sof: os109 -- Icon in Frame did not have session associated with it
Zarro Boogs per Child
bugtracker at laptop.org
Tue Feb 9 02:13:47 EST 2010
#10016: os109 -- Icon in Frame did not have session associated with it
--------------------------------+-------------------------------------------
Reporter: mikus | Owner: dsd
Type: defect | Status: new
Priority: low | Milestone: 1.5-software-later
Component: sugar | Version: Development build as of this date
Resolution: | Keywords:
Next_action: diagnose | Verified: 0
Deployment_affected: | Blockedby:
Blocking: |
--------------------------------+-------------------------------------------
Comment(by Quozl):
Replying to [comment:4 Quozl]:
> * once the activity startup is underway, the shell is informed through
the window manager properties (more hand waving),
Further detail on this:
* ShellModel. _ _ init _ _ () connects to the ''window-opened'' signal of
the screen, in order to be notified when windows are created on the X
display,
* ShellModel._window_opened_cb() is called when the launcher or the
starting activity has created a window,
* _window_opened_cb() obtains the activity ID from window properties, and
populates _activities[] with the ID,
* ShellModel.get_activity_by_id() searches _activities[].
Therefore ShellModel.get_activity_by_id() will return false between the
time the activity is launched and the launcher has opened a window.
This race is facilitated by the design in combination with the
asynchronous X protocol.
The launcher will request a window through the connection it has with the
X server, and the X server must be scheduled, must process the request,
and must reply to interested clients before the shell process will be
informed. During this time the starting activity competes with the
processes for CPU resource.
On the other hand, the shell chose to resume the activity, so it should be
possible for the code to keep track of the activity ID being launched and
refuse the second click. It must then remove the pending activity ID
after the launch has completed; successfully or not.
--
Ticket URL: <http://dev.laptop.org/ticket/10016#comment:7>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system
More information about the Bugs
mailing list