This commit broke glx after server reset.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
This commit is contained in:
stefan11111
2025-11-01 22:17:02 +02:00
committed by Enrico Weigelt
parent 631dc9d275
commit 0ec0f00c23
2 changed files with 7 additions and 3 deletions

View File

@@ -33,7 +33,6 @@ typedef struct _CallbackList {
*
* @param pcbl pointer to the list head (CallbackListPtr)
*/
_X_EXPORT /* only for GLX module */
void DeleteCallbackList(CallbackListPtr *pcbl);
#endif /* _XSERVER_CALLBACK_PRIV_H */

View File

@@ -49,7 +49,8 @@ Bool noGlxExtension = FALSE;
ExtensionEntry *GlxExtensionEntry;
int GlxErrorBase = 0;
static CallbackListPtr vndInitCallbackListPtr = NULL;
static CallbackListRec vndInitCallbackList;
static CallbackListPtr vndInitCallbackListPtr = &vndInitCallbackList;
static DevPrivateKeyRec glvXGLVScreenPrivKey;
static DevPrivateKeyRec glvXGLVClientPrivKey;
@@ -199,7 +200,11 @@ GLXReset(ExtensionEntry *extEntry)
GlxMappingReset();
if ((dispatchException & DE_TERMINATE) == DE_TERMINATE) {
DeleteCallbackList(&vndInitCallbackListPtr);
while (vndInitCallbackList.list != NULL) {
CallbackPtr next = vndInitCallbackList.list->next;
free(vndInitCallbackList.list);
vndInitCallbackList.list = next;
}
}
}