Avoid a self-assignment.
authorPauli <paul.dale@oracle.com>
Tue, 22 Aug 2017 03:05:30 +0000 (13:05 +1000)
committerPauli <paul.dale@oracle.com>
Tue, 22 Aug 2017 03:07:37 +0000 (13:07 +1000)
Clang is generating a warning over an assignment of a variable to itself.
This occurs on an ASCII based machine where the convert to ASCII macro doesn't
do anything.  The fix is to introduce a temporary variable.

Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/4214)

crypto/ctype.c

index 89ed5bf486b95b5725551076b7b845b0184bc080..588c6dac3cc2c4ac390db55864b00607ba8eecf7 100644 (file)
@@ -251,9 +251,9 @@ int ossl_fromascii(int c)
 int ossl_ctype_check(int c, unsigned int mask)
 {
     const int max = sizeof(ctype_char_map) / sizeof(*ctype_char_map);
+    const int a = ossl_toascii(c);
 
-    c = ossl_toascii(c);
-    return c >= 0 && c < max && (ctype_char_map[c] & mask) != 0;
+    return a >= 0 && a < max && (ctype_char_map[a] & mask) != 0;
 }
 
 #if defined(CHARSET_EBCDIC) && !defined(CHARSET_EBCDIC_TEST)