]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/extra/uconv/uwmsg.c
ICU-66108.tar.gz
[apple/icu.git] / icuSources / extra / uconv / uwmsg.c
index 67c12885953deb18b983531ed312e1fae2ebeb4e..fdfb1c863f9ea599ee95cf24ed5605ea4d4e0e61 100644 (file)
@@ -1,6 +1,8 @@
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /*
 **********************************************************************
-* Copyright (C) 1998-2012, International Business Machines Corporation
+* Copyright (C) 1998-2016, International Business Machines Corporation
 * and others.  All Rights Reserved.
 **********************************************************************
 *
@@ -19,6 +21,7 @@
 #include "unicode/uwmsg.h"
 #include "unicode/ures.h"
 #include "unicode/putil.h"
+#include "cmemory.h"
 #include "cstring.h"
 
 #include <stdlib.h>
@@ -26,8 +29,6 @@
 #include <stdio.h>
 #include <string.h>
 
-#define LENGTHOF(array) (sizeof(array)/sizeof((array)[0]))
-
 #define BUF_SIZE 128
 
 /* Print a ustring to the specified FILE* in the default codepage */
@@ -127,7 +128,7 @@ U_CFUNC int u_wmsg(FILE *fp, const char *tag, ... )
     va_list ap;
 #endif
     UChar   result[4096];
-    int32_t resultLength = LENGTHOF(result);
+    int32_t resultLength = UPRV_LENGTHOF(result);
 
     if(gBundle == NULL)
     {
@@ -145,8 +146,8 @@ U_CFUNC int u_wmsg(FILE *fp, const char *tag, ... )
     }
 
 #if UCONFIG_NO_FORMATTING
-    resultLength = sizeof(gNoFormatting) / U_SIZEOF_UCHAR;
-    if((msgLen + resultLength) <= LENGTHOF(result)) {
+    resultLength = UPRV_LENGTHOF(gNoFormatting);
+    if((msgLen + resultLength) <= UPRV_LENGTHOF(result)) {
         memcpy(result, msg, msgLen * U_SIZEOF_UCHAR);
         memcpy(result + msgLen, gNoFormatting, resultLength);
         resultLength += msgLen;
@@ -155,6 +156,7 @@ U_CFUNC int u_wmsg(FILE *fp, const char *tag, ... )
         uprint(msg,msgLen, fp, &err);
     }
 #else
+    (void)gNoFormatting;  // suppress -Wunused-variable
     va_start(ap, tag);
 
     resultLength = u_vformatMessage(uloc_getDefault(), msg, msgLen, result, resultLength, ap, &err);