idle-inhibit: fix use-after-free
A user reported a crash that only reproduces when preloading a hardened malloc implementation. From the stack trace, this use-after-free seems to be the most likely cause. Yay hardened malloc!
This commit is contained in:
		| @ -28,7 +28,8 @@ fn handleDestroy(listener: *wl.Listener(*wlr.IdleInhibitorV1), _: *wlr.IdleInhib | ||||
|  | ||||
|     const node = @fieldParentPtr(std.TailQueue(Self).Node, "data", self); | ||||
|     server.idle_inhibitor_manager.inhibitors.remove(node); | ||||
|     util.gpa.destroy(node); | ||||
|  | ||||
|     self.inhibitor_manager.idleInhibitCheckActive(); | ||||
|  | ||||
|     util.gpa.destroy(node); | ||||
| } | ||||
|  | ||||
		Reference in New Issue
	
	Block a user