diff options
author | Tomas Janousek <tomi@nomi.cz> | 2022-02-17 14:56:49 +0000 |
---|---|---|
committer | Tomas Janousek <tomi@nomi.cz> | 2022-02-17 17:42:27 +0000 |
commit | b3249613e36d1909b1ecab867b4c556284f70362 (patch) | |
tree | ddb782292bf8e2d13a3efee79d2de9202b2a846c /src/Xmobar/Run/Types.hs | |
parent | bfd02987485210646800f4184a21b1143f2e301c (diff) | |
download | xmobar-b3249613e36d1909b1ecab867b4c556284f70362.tar.gz xmobar-b3249613e36d1909b1ecab867b4c556284f70362.tar.bz2 |
Fix memory leak in drawInWin
In f8c835a33a7a, I flipped the discard flag to XSync to False on a false
assumption that it may discard events from under the eventer thread
(since renamed to handleXEvent). This can't happen—the eventer thread
and the main loop do not share a Display connection, they have two
separate ones. Turns out, the main loop doesn't read/process any events
from its Display connection, which is why it was necessary to discard
them once in a while.
The fix restores that discarding, adds a comment to explain why that
discarding should stay, and just to make things a bit cleaner, also
prevents some of those events from being emitted in the first place: by
configuring the graphics context that we don't want any exposure events
(https://tronche.com/gui/x/xlib/events/exposure/graphics-expose-and-no-expose.html).
Fixes: f8c835a33a7a ("Fix delayed reaction to USR1/2 signals")
Diffstat (limited to 'src/Xmobar/Run/Types.hs')
0 files changed, 0 insertions, 0 deletions