xlibre-xserver/dix/callback_priv.h
stefan11111 0ec0f00c23 glx: revert cb85ceae2d
This commit broke glx after server reset.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2025-11-11 10:46:29 +01:00

39 lines
984 B
C

/* SPDX-License-Identifier: MIT OR X11
*
* Copyright © 2024 Enrico Weigelt, metux IT consult <info@metux.net>
*/
#ifndef _XSERVER_CALLBACK_PRIV_H
#define _XSERVER_CALLBACK_PRIV_H
#include "callback.h"
void InitCallbackManager(void);
void DeleteCallbackManager(void);
typedef struct _CallbackRec {
CallbackProcPtr proc;
void *data;
Bool deleted;
struct _CallbackRec *next;
} CallbackRec, *CallbackPtr;
typedef struct _CallbackList {
int inCallback;
Bool deleted;
int numDeleted;
CallbackPtr list;
} CallbackListRec;
/*
* @brief delete a callback list
*
* Calling this is necessary if a CallbackListPtr is used inside a dynamically
* allocated structure, before it is freed. If it's not done, memory corruption
* or segfault can happen at a much later point (eg. next server incarnation)
*
* @param pcbl pointer to the list head (CallbackListPtr)
*/
void DeleteCallbackList(CallbackListPtr *pcbl);
#endif /* _XSERVER_CALLBACK_PRIV_H */