Extension setup functions are not called when the server resets and when XFree86LOADER is defined. This is causing extensions that allocate devPrivates space in their setup function to fail to do so on a server reset. Solution is to call setup functions from InitExtensions() in miinitext.c.
Patch applied: diff --git a/mi/miinitext.c b/mi/miinitext.c index f618595..cb34473 100644 --- a/mi/miinitext.c +++ b/mi/miinitext.c @@ -754,6 +754,16 @@ InitExtensions(argc, argv) /* Sort the extensions according the init dependencies. */ LoaderSortExtensions(); listInitialised = TRUE; + } else { + /* Call the setup functions on subsequent server resets as well */ + for (i = 0; ExtensionModuleList[i].name != NULL; i++) { + ext = &ExtensionModuleList[i]; + if (ext->setupFunc != NULL && + (ext->disablePtr == NULL || + (ext->disablePtr != NULL && !*ext->disablePtr))) { + (ext->setupFunc)(); + } + } } for (i = 0; ExtensionModuleList[i].name != NULL; i++) {
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.