ICU-5720 Fix usage of UVersionInfo type.

X-SVN-Rev: 26629
This commit is contained in:
Michael Ow 2009-09-14 16:48:42 +00:00
parent 44b26a579b
commit 67e5dae0ae
2 changed files with 23 additions and 22 deletions

View file

@ -11,13 +11,30 @@
#include "unicode/icudataver.h"
#include "unicode/uversion.h"
#include "unicode/ures.h"
#include "uresimp.h" /* for ures_getVersionByKey */
/*
* Determines if icustd is in the data.
*/
UBool hasICUSTDBundle();
static UBool hasICUSTDBundle();
U_CAPI void U_EXPORT2 u_getDataVersion(UVersionInfo *dataVersionFillin, UErrorCode *status) {
static UBool hasICUSTDBundle() {
UErrorCode status = U_ZERO_ERROR;
UBool result = TRUE;
UResourceBundle *icustdbundle = ures_openDirect(NULL, U_ICU_STD_BUNDLE, &status);
if (U_SUCCESS(status)) {
result = TRUE;
} else {
result = FALSE;
}
ures_close(icustdbundle);
return result;
}
U_CAPI void U_EXPORT2 u_getDataVersion(UVersionInfo dataVersionFillin, UErrorCode *status) {
UResourceBundle *icudatares = NULL;
if (U_FAILURE(*status)) {
@ -32,7 +49,7 @@ U_CAPI void U_EXPORT2 u_getDataVersion(UVersionInfo *dataVersionFillin, UErrorCo
}
}
U_CAPI UBool U_EXPORT2 u_isDataOlder(UVersionInfo *dataVersionFillin, UBool *isModifiedFillin, UErrorCode *status) {
U_CAPI UBool U_EXPORT2 u_isDataOlder(UVersionInfo dataVersionFillin, UBool *isModifiedFillin, UErrorCode *status) {
UBool result = TRUE;
UVersionInfo dataVersion;
UVersionInfo wiredVersion;
@ -41,7 +58,7 @@ U_CAPI UBool U_EXPORT2 u_isDataOlder(UVersionInfo *dataVersionFillin, UBool *isM
return result;
}
u_getDataVersion(&dataVersion, status);
u_getDataVersion(dataVersion, status);
if (U_SUCCESS(*status)) {
u_versionFromString(wiredVersion, U_ICU_DATA_VERSION);
@ -62,19 +79,3 @@ U_CAPI UBool U_EXPORT2 u_isDataOlder(UVersionInfo *dataVersionFillin, UBool *isM
return result;
}
UBool hasICUSTDBundle() {
UErrorCode status = U_ZERO_ERROR;
UBool result = TRUE;
UResourceBundle *icustdbundle = ures_openDirect(NULL, U_ICU_STD_BUNDLE, &status);
if (U_SUCCESS(status)) {
result = TRUE;
} else {
result = FALSE;
}
ures_close(icustdbundle);
return result;
}

View file

@ -32,7 +32,7 @@
*
* @draft ICU 4.4
*/
U_CAPI UBool U_EXPORT2 u_isDataOlder(UVersionInfo *dataVersionFillin, UBool *isModifiedFillin, UErrorCode *status);
U_CAPI UBool U_EXPORT2 u_isDataOlder(UVersionInfo dataVersionFillin, UBool *isModifiedFillin, UErrorCode *status);
/**
* Retrieves the data version from icuver and stores it in dataVersionFillin.
@ -42,6 +42,6 @@ U_CAPI UBool U_EXPORT2 u_isDataOlder(UVersionInfo *dataVersionFillin, UBool *isM
*
* @draft ICU 4.4
*/
U_CAPI void U_EXPORT2 u_getDataVersion(UVersionInfo *dataVersionFillin, UErrorCode *status);
U_CAPI void U_EXPORT2 u_getDataVersion(UVersionInfo dataVersionFillin, UErrorCode *status);
#endif