genode/repos/gems
Norman Feske 493386ed27 wm: prevent superfluous session upgrades
For each session upgrade performed by a wm client as part of the
Nitpicker::Connection::buffer function, the window manager wrongly
upgraded the wrapped nitpicker session twice: Once by handling the
Root::upgrade, and again by handling of the server-side 'buffer'
operation. Here, the 'buffer' operation was implemented by not merely
forwarding the RPC request to the wrapped nitpicker session but by
calling the 'buffer' method on the wrapped session's connection
object, which implictly issues session upgrades. Consequently,
the window manager would transfer twice the amount of the session
upgrades it received by its clients to nitpicker and eventually ran
out of memory.

The patch fixes the problem by eliminating the call of the
Nitpicker::Connection::buffer method and instead merely forward the RPC
requests to the wrapped nitpicker sessions.
2015-11-27 12:18:53 +01:00
..
include Fix missing include 2015-10-06 12:18:52 +02:00
lib/mk gems: move reusable code to include/gems 2014-10-13 15:21:53 +02:00
run gems: add experimental mixer_gui based on Qt 2015-11-18 12:22:07 +01:00
src wm: prevent superfluous session upgrades 2015-11-27 12:18:53 +01:00
README Remove repos/qt4, fix #1451 2015-03-19 08:57:20 +01:00

This directory is a source-code repository containing Genode-specific
services and applications. In contrast to the components that come with
the 'os' repository, programs contained in 'gems' are able to leverage
the functionalities provided by higher-level repositories such as 'libports'.
To use the 'gems' repository, make sure to also add those repositories to your
build configuraion.