Tiago Vignatti wrote:
>> diff --git a/hw/xfree86/common/xf86Events.c b/hw/xfree86/common/xf86Events.c
>> index 8cd765a..8e6a15b 100644
>> --- a/hw/xfree86/common/xf86Events.c
>> +++ b/hw/xfree86/common/xf86Events.c
>> @@ -202,8 +202,16 @@ xf86ProcessActionEvent(ActionEvent action, void *arg)
>> vtno--;
>> #endif
>> #if defined(sun)
>> - if (vtno == xf86Info.vtno)
>> + if (vtno == xf86Info.vtno) {
>> break;
>> + } else {
>> + struct vt_stat state;
>> + if (ioctl(xf86Info.consoleFd, VT_GETSTATE, &state) < 0)
>> + break;
>> +
>> + if ((state.v_state & (1 << vtno)) == 0)
>> + break;
>> + }
>
> bonus points if we could hide this OS code on os-support directories instead.
That section of xf86Events.c is already full of OS-specific code - replacing
that all with calls to a new function in the os-support dirs may be worthwhile,
but is separate from this bug fix.
--
-Alan Coopersmith- [email protected]
Sun Microsystems, Inc. - X Window System Engineering
_______________________________________________
xorg-devel mailing list
[email protected]
http://lists.x.org/mailman/listinfo/xorg-devel