DeleteCallbackManager() introduced for better symmetry in the caller, they do the same thing.
==20085== 24 bytes in 1 blocks are still reachable in loss record 11 of 103 ==20085== at 0x4C2A4CD: malloc (vg_replace_malloc.c:236) ==20085== by 0x43A097: CreateCallbackList (dixutils.c:837) ==20085== by 0x43A1D3: AddCallback (dixutils.c:869) ==20085== by 0x4B1736: GEExtensionInit (geext.c:209) ==20085== by 0x41C8A8: InitExtensions (miinitext.c:389) ==20085== by 0x5AC918: main (main.c:208) ==2042== 8 bytes in 1 blocks are still reachable in loss record 2 of 97 ==2042== at 0x4C2A4CD: malloc (vg_replace_malloc.c:236) ==2042== by 0x4C2A657: realloc (vg_replace_malloc.c:525) ==2042== by 0x4802F5: XNFrealloc (utils.c:1095) ==2042== by 0x43A17A: CreateCallbackList (dixutils.c:855) ==2042== by 0x43A1EF: AddCallback (dixutils.c:870) ==2042== by 0x4B1752: GEExtensionInit (geext.c:209) ==2042== by 0x41C8A8: InitExtensions (miinitext.c:389) ==2042== by 0x5AC9E4: main (main.c:208) ==2042== Signed-off-by: Peter Hutterer <[email protected]> --- dix/dixutils.c | 8 +++++++- dix/main.c | 2 ++ include/callback.h | 1 + 3 files changed, 10 insertions(+), 1 deletions(-) diff --git a/dix/dixutils.c b/dix/dixutils.c index da26dc1..7d9d3e3 100644 --- a/dix/dixutils.c +++ b/dix/dixutils.c @@ -887,7 +887,7 @@ DeleteCallbackList(CallbackListPtr *pcbl) } void -InitCallbackManager(void) +DeleteCallbackManager(void) { int i; @@ -900,3 +900,9 @@ InitCallbackManager(void) numCallbackListsToCleanup = 0; listsToCleanup = NULL; } + +void +InitCallbackManager(void) +{ + DeleteCallbackManager(); +} diff --git a/dix/main.c b/dix/main.c index bc75c0b..8e6df46 100644 --- a/dix/main.c +++ b/dix/main.c @@ -340,6 +340,8 @@ int main(int argc, char *argv[], char *envp[]) FreeAuditTimer(); + DeleteCallbackManager(); + if (dispatchException & DE_TERMINATE) { CloseWellKnownConnections(); diff --git a/include/callback.h b/include/callback.h index 9a1da73..f9711c6 100644 --- a/include/callback.h +++ b/include/callback.h @@ -90,5 +90,6 @@ extern _X_EXPORT void DeleteCallbackList( CallbackListPtr * /*pcbl*/); extern _X_EXPORT void InitCallbackManager(void); +extern _X_EXPORT void DeleteCallbackManager(void); #endif /* CALLBACK_H */ -- 1.7.7.6 _______________________________________________ [email protected]: X.Org development Archives: http://lists.x.org/archives/xorg-devel Info: http://lists.x.org/mailman/listinfo/xorg-devel
