Index: source/common/ucln_cmn.c |
diff --git a/source/common/ucln_cmn.c b/source/common/ucln_cmn.c |
deleted file mode 100644 |
index 0c04b0d7f910cf26a7aec4328bc24b9e1a8fa0bf..0000000000000000000000000000000000000000 |
--- a/source/common/ucln_cmn.c |
+++ /dev/null |
@@ -1,105 +0,0 @@ |
-/* |
-****************************************************************************** |
-* Copyright (C) 2001-2013, International Business Machines |
-* Corporation and others. All Rights Reserved. |
-****************************************************************************** |
-* file name: ucln_cmn.c |
-* encoding: US-ASCII |
-* tab size: 8 (not used) |
-* indentation:4 |
-* |
-* created on: 2001July05 |
-* created by: George Rhoten |
-*/ |
- |
-#include "unicode/utypes.h" |
-#include "unicode/uclean.h" |
-#include "utracimp.h" |
-#include "ucln_cmn.h" |
-#include "cmutex.h" |
-#include "ucln.h" |
-#include "cmemory.h" |
-#include "uassert.h" |
- |
-/** Auto-client for UCLN_COMMON **/ |
-#define UCLN_TYPE_IS_COMMON |
-#include "ucln_imp.h" |
- |
-static cleanupFunc *gCommonCleanupFunctions[UCLN_COMMON_COUNT]; |
-static cleanupFunc *gLibCleanupFunctions[UCLN_COMMON]; |
- |
- |
-/************************************************ |
- The cleanup order is important in this function. |
- Please be sure that you have read ucln.h |
- ************************************************/ |
-U_CAPI void U_EXPORT2 |
-u_cleanup(void) |
-{ |
- UTRACE_ENTRY_OC(UTRACE_U_CLEANUP); |
- umtx_lock(NULL); /* Force a memory barrier, so that we are sure to see */ |
- umtx_unlock(NULL); /* all state left around by any other threads. */ |
- |
- ucln_lib_cleanup(); |
- |
- cmemory_cleanup(); /* undo any heap functions set by u_setMemoryFunctions(). */ |
- UTRACE_EXIT(); /* Must be before utrace_cleanup(), which turns off tracing. */ |
-/*#if U_ENABLE_TRACING*/ |
- utrace_cleanup(); |
-/*#endif*/ |
-} |
- |
-U_CAPI void U_EXPORT2 ucln_cleanupOne(ECleanupLibraryType libType) |
-{ |
- if (gLibCleanupFunctions[libType]) |
- { |
- gLibCleanupFunctions[libType](); |
- gLibCleanupFunctions[libType] = NULL; |
- } |
-} |
- |
-U_CFUNC void |
-ucln_common_registerCleanup(ECleanupCommonType type, |
- cleanupFunc *func) |
-{ |
- U_ASSERT(UCLN_COMMON_START < type && type < UCLN_COMMON_COUNT); |
- if (UCLN_COMMON_START < type && type < UCLN_COMMON_COUNT) |
- { |
- gCommonCleanupFunctions[type] = func; |
- } |
-#if !UCLN_NO_AUTO_CLEANUP && (defined(UCLN_AUTO_ATEXIT) || defined(UCLN_AUTO_LOCAL)) |
- ucln_registerAutomaticCleanup(); |
-#endif |
-} |
- |
-U_CAPI void U_EXPORT2 |
-ucln_registerCleanup(ECleanupLibraryType type, |
- cleanupFunc *func) |
-{ |
- U_ASSERT(UCLN_START < type && type < UCLN_COMMON); |
- if (UCLN_START < type && type < UCLN_COMMON) |
- { |
- gLibCleanupFunctions[type] = func; |
- } |
-} |
- |
-U_CFUNC UBool ucln_lib_cleanup(void) { |
- ECleanupLibraryType libType = UCLN_START; |
- ECleanupCommonType commonFunc = UCLN_COMMON_START; |
- |
- for (libType++; libType<UCLN_COMMON; libType++) { |
- ucln_cleanupOne(libType); |
- } |
- |
- for (commonFunc++; commonFunc<UCLN_COMMON_COUNT; commonFunc++) { |
- if (gCommonCleanupFunctions[commonFunc]) |
- { |
- gCommonCleanupFunctions[commonFunc](); |
- gCommonCleanupFunctions[commonFunc] = NULL; |
- } |
- } |
-#if !UCLN_NO_AUTO_CLEANUP && (defined(UCLN_AUTO_ATEXIT) || defined(UCLN_AUTO_LOCAL)) |
- ucln_unRegisterAutomaticCleanup(); |
-#endif |
- return TRUE; |
-} |