mirror of
https://github.com/X11Libre/xserver.git
synced 2026-11-15 05:23:40 +00:00
| Filename | Latest commit message | Latest commit date |
|---|---|---|
input_constrain_cursor() writes pointer-barrier hit/leave events into the caller-supplied events buffer and bumps *nevents. It dereferenced both unconditionally (barrier_events->barrier_event = ev; *nevents += 1), so calling it with a NULL events/nevents pair crashed on the first barrier. Callers do not pass NULL today (the only NULL call, GetTouchEvents -> positionSprite(), is hardcoded to Absolute mode where this function's barrier paths are skipped), but the function is a straightforward NULL-safety hazard. Guard event emission on a can_emit flag derived from both pointers, while still performing the barrier clamping so cursor coordinates are constrained correctly even when no events can be emitted. Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net> |
||
| .. | ||
| allowev.c | ||
| chgdctl.c | ||
| chgfctl.c | ||
| chgkbd.c | ||
| chgkmap.c | ||
| chgprop.c | ||
| chgptr.c | ||
| chgptr.h | ||
| closedev.c | ||
| devbell.c | ||
| exevents.c | ||
| exglobals.h | ||
| extinit.c | ||
| getbmap.c | ||
| getdctl.c | ||
| getfctl.c | ||
| getfocus.c | ||
| getkmap.c | ||
| getmmap.c | ||
| getprop.c | ||
| getprop.h | ||
| getselev.c | ||
| getvers.c | ||
| grabdev.c | ||
| grabdev.h | ||
| grabdevb.c | ||
| grabdevk.c | ||
| gtmotion.c | ||
| handlers.h | ||
| listdev.c | ||
| meson.build | ||
| opendev.c | ||
| queryst.c | ||
| selectev.c | ||
| sendexev.c | ||
| setbmap.c | ||
| setdval.c | ||
| setfocus.c | ||
| setmmap.c | ||
| setmode.c | ||
| stubs.c | ||
| ungrdev.c | ||
| ungrdevb.c | ||
| ungrdevk.c | ||
| xiallowev.c | ||
| xibarriers.c | ||
| xibarriers.h | ||
| xichangecursor.c | ||
| xichangehierarchy.c | ||
| xichangehierarchy.h | ||
| xigetclientpointer.c | ||
| xigrabdev.c | ||
| xipassivegrab.c | ||
| xiproperty.c | ||
| xiproperty.h | ||
| xiquerydevice.c | ||
| xiquerydevice.h | ||
| xiquerypointer.c | ||
| xiqueryversion.c | ||
| xiselectev.c | ||
| xisetclientpointer.c | ||
| xisetdevfocus.c | ||
| XIstubs.h | ||
| xiwarppointer.c | ||