Bug 201951 - patch pinentry-0.7.2-grab.patch breaks app-crypt/pinentry 0.7.3 when using compiz
|
Bug#:
201951
|
Product: Gentoo Linux
|
Version: 2007.0
|
Platform: x86
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: swegener@gentoo.org
|
Reported By: ghepeu@virgilio.it
|
|
Component: Applications
|
|
|
URL:
|
|
Summary: patch pinentry-0.7.2-grab.patch breaks app-crypt/pinentry 0.7.3 when using compiz
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2007-12-11 14:37 0000
|
The patch pinentry-0.7.2-grab.patch works reliably with pinentry 0.7.3 and
metacity but breaks pinentry when using compiz 0.6.2.
The passphrase is accepted when I use the [Enter] key but if I click on the OK
button pinentry crashes.
Commenting out the relevant epatch line from the ebuild and rebulding pinentry
fixes this problem.
Reproducible: Always
The same's true for pinentry 0.7.4.
Any clue what the difference is?
This is following bug#165493.
I am no gtk+ developer... I tried to play with these events...
map-event is issued too early for some users... So grab does not work.
expose-event is issued too many times during session, so it may cause the
behavior we see here.
I tried to add gdk_event_get_graphics_expose() at the map-expose event handler,
but then it stacked.
I tried to see if there is another event happening after map-event, and found
focus-in-event that already used if nograb is used.
I don't really understand the function of the map-event here...
Created an attachment (id=139069) [details]
pinentry-0.7.4-grab.patch
I think this patch is "good enough", it handles focus-in/focus-out-event and
grab the keyboard if requested.
The extra protection of early grab set is dropped... But if it works, I think
it will do.
Can you all check if it works?
This patch works perfectly for me.
It turns out that with the previous patch pinentry crashed for me as well when
clicking OK. I only tested with the enter key before.
I'm not running compiz though and disabling the composite extension did not
make a difference.
OK.
Closing this.
If someone has a better solution please reopen.