On 15/07/10 13:37 , Ping Cheng wrote:
> On Wed, Jul 14, 2010 at 6:04 PM, Peter Hutterer
> <[email protected]>  wrote:
>> This fixes a hang caused by wcmEmitKeySyms(). XkbGetCoreMap() allocates
>> memory and doing so in the signal handler (i.e. event processing) may hang
>> the machine. Instead, get the core keymap after initialising the key class
>> and save it in the device.
>>
>> Side-effect: if the keyboard layout is set after device initialization, the
>> keycodes sent by the wacom device are almost certainly wrong.
>>
>> Note: while we asked for the keysyms rec on X servers with an ABI<  7  we
>> never actually initialised it. The ifdef for the ABI check was removed in
>> this patch since the call to XkbGetCoreMap is already inside the ABI>= 7
>> check.
>>
>> Signed-off-by: Peter Hutterer<[email protected]>
>
> Acked-by: Ping Cheng<[email protected]>
>
>> ---
>> I don't have a good answer to how to update the keymap when it changes yet.
>
> Maybe we can add a new xsetwacom property so clients/users can inform
> the driver when keyboard layout changed. Driver then convert the
> existing keys into the new form (I don't know if this is
> possible/doable or not though).

if we're going down that route it'd be better to load the keycodes into 
the driver only and let the clients update them as the keysyms change. 
of course this requires updating xsetwacom and every client that sets 
the key actions but it'd be the right implementation, the driver should 
not care about XKB maps.

clients can also keep track of keyboard map changes much easier than the 
driver.

Cheers,
   Peter

------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Linuxwacom-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linuxwacom-devel

Reply via email to