mirror of
https://github.com/X11Libre/xserver.git
synced 2026-11-15 05:23:40 +00:00
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
Some checks failed
Build X servers / ubuntu-fetch-pkg (push) Has been cancelled
Build X servers / xserver-build-ubuntu-no-gbm (push) Has been cancelled
Build X servers / xserver-build-ubuntu (push) Has been cancelled
Build X servers / abi-changes-check (push) Has been cancelled
Build X servers / drivers-prepare-ubuntu (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-elographics:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-evdev:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-joystick:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-keyboard:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-libinput:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-mouse:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-synaptics:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-vmmouse:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-void:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (input-wacom:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-amdgpu:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-apm:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-ark:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-ast:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-ati:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-chips:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-cirrus:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-dummy:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-fbdev:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-freedreno:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-geode:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-i128:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-i740:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-intel:25.0.1) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-mach64:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-mga:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-neomagic:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-nested:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-nouveau:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-nv:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-omap:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-qxl:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-r128:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-rendition:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-s3virge:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-savage:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-siliconmotion:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sis:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sisusb:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg14:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg3:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suncg6:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sunffb:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-sunleo:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-suntcx:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-tdfx:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-trident:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-v4l:25.0.1) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vbox:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vesa:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-vmware:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-voodoo:25.0.0) (push) Has been cancelled
Build X servers / drivers-build-ubuntu (video-xgi:25.0.0) (push) Has been cancelled
Build X servers / xserver-build-mingw32-ubuntu (push) Has been cancelled
Build X servers / xserver-build-macos (push) Has been cancelled
Build X servers / xserver-build-freebsd (push) Has been cancelled
Build X servers / xserver-build-dragonflybsd (push) Has been cancelled
Build X servers / xserver-build-netbsd (push) Has been cancelled
Build X servers / xserver-build-alpine (push) Has been cancelled
Build X servers / xserver-build-cygwin (push) Has been cancelled
Build X servers / xserver-build-arch (push) Has been cancelled
Build X servers / Check Signed-Off-By (push) Has been cancelled
Build X servers / Release pushed tag (push) Has been cancelled
check PRs for merge conflicts / notify (push) Has been cancelled
Most xorg_list operations already tolerate a list head that was merely
zero-initialized (next == prev == NULL) instead of run through
xorg_list_init(): xorg_list_add()/xorg_list_append() auto-init via
__xorg_list_autoinit(), and xorg_list_for_each_entry(), xorg_list_is_empty()
and xorg_list_present() guard against a NULL head->next.
Two paths were still missed, so a head embedded in a calloc()'d struct could
crash before anything was ever added to it:
- xorg_list_for_each_entry_safe() guarded its loop *condition* with
(head)->next != NULL, but its init clause unconditionally computed
tmp = container_of(pos->member.next, ...). On a zeroed head, pos resolves
to container_of(NULL) and reading pos->member.next dereferences address 0,
crashing before the guard is evaluated. Seed tmp from
(head)->next ? pos->member.next : NULL so an empty/zeroed list iterates
zero times without dereferencing anything.
- xorg_list_del() dereferenced entry->prev/entry->next directly, so resetting
a zeroed head (the documented "reset to empty list" use) would NULL-deref.
Auto-init it first, consistent with xorg_list_add()/xorg_list_append().
With these, a zero-initialized xorg_list head behaves as a valid empty list
across the whole API, so an embedded list head no longer strictly requires an
explicit xorg_list_init() call to be safe.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
|
||
| .. | ||
| .gitignore | ||
| callback.h | ||
| client.h | ||
| colormap.h | ||
| colormapst.h | ||
| compiler.h | ||
| compositeext.h | ||
| cursor.h | ||
| cursorstr.h | ||
| damage.h | ||
| damagestr.h | ||
| dgaproc.h | ||
| displaymode.h | ||
| dix.h | ||
| dixaccess.h | ||
| dixfont.h | ||
| dixfontstr.h | ||
| dixstruct.h | ||
| dri.h | ||
| dri2.h | ||
| dri3.h | ||
| dristruct.h | ||
| edid.h | ||
| events.h | ||
| eventstr.h | ||
| exa.h | ||
| exevents.h | ||
| extension.h | ||
| extinit.h | ||
| extnsionst.h | ||
| fb.h | ||
| fbdevhw.h | ||
| fboverlay.h | ||
| fbpict.h | ||
| fbrop.h | ||
| fd_notify.h | ||
| fourcc.h | ||
| gc.h | ||
| gcstruct.h | ||
| glamor.h | ||
| globals.h | ||
| glx_extinit.h | ||
| glxvndabi.h | ||
| glyphstr.h | ||
| i2c_def.h | ||
| input.h | ||
| inputstr.h | ||
| list.h | ||
| meson.build | ||
| mi.h | ||
| micmap.h | ||
| micoord.h | ||
| migc.h | ||
| miline.h | ||
| mipict.h | ||
| mipointer.h | ||
| mipointrst.h | ||
| misc.h | ||
| miscstruct.h | ||
| mistruct.h | ||
| misync.h | ||
| misyncfd.h | ||
| misyncshm.h | ||
| misyncstr.h | ||
| mizerarc.h | ||
| opaque.h | ||
| optionstr.h | ||
| os.h | ||
| picture.h | ||
| picturestr.h | ||
| pixmap.h | ||
| pixmapstr.h | ||
| present.h | ||
| privates.h | ||
| property.h | ||
| propertyst.h | ||
| protocol-versions.h | ||
| ptrveloc.h | ||
| randrstr.h | ||
| region.h | ||
| regionstr.h | ||
| resource.h | ||
| rgb.h | ||
| rrtransform.h | ||
| sarea.h | ||
| screenint.h | ||
| scrnintstr.h | ||
| servermd.h | ||
| shadow.h | ||
| shadowfb.h | ||
| shmint.h | ||
| syncsdk.h | ||
| validate.h | ||
| vbe.h | ||
| vbeModes.h | ||
| vgaHW.h | ||
| vidmodestr.h | ||
| vndserver.h | ||
| wfbrename.h | ||
| window.h | ||
| windowstr.h | ||
| xaarop.h | ||
| xf86.h | ||
| xf86_OSlib.h | ||
| xf86_OSproc.h | ||
| xf86cmap.h | ||
| xf86Crtc.h | ||
| xf86Cursor.h | ||
| xf86DDC.h | ||
| xf86fbman.h | ||
| xf86i2c.h | ||
| xf86int10.h | ||
| xf86Modes.h | ||
| xf86Module.h | ||
| xf86Opt.h | ||
| xf86Optionstr.h | ||
| xf86Optrec.h | ||
| xf86Parser.h | ||
| xf86Pci.h | ||
| xf86platformBus.h | ||
| xf86Priv.h | ||
| xf86Privstr.h | ||
| xf86RandR12.h | ||
| xf86sbusBus.h | ||
| xf86str.h | ||
| xf86Xinput.h | ||
| xf86xv.h | ||
| xf86xvmc.h | ||
| xisb.h | ||
| xkb-config.h.in | ||
| xkbrules.h | ||
| xkbsrv.h | ||
| xkbstr.h | ||
| xlibre_ptrtypes.h | ||
| xorgVersion.h | ||
| Xprintf.h | ||
| xserver-properties.h | ||
| Xserver.d | ||
| xvdix.h | ||
| xvmcext.h | ||
| xwin-config.h.meson.in | ||