X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fnls%2Fnls_euc-jp.c;fp=fs%2Fnls%2Fnls_euc-jp.c;h=80f108ae6661fb9aadb6c22e82a290aed52c6aeb;hb=64ba3f394c830ec48a1c31b53dcae312c56f1604;hp=06640c3e402102db7e32d5ddf6d742c00c4a935e;hpb=be1e6109ac94a859551f8e1774eb9a8469fe055c;p=linux-2.6.git diff --git a/fs/nls/nls_euc-jp.c b/fs/nls/nls_euc-jp.c index 06640c3e4..80f108ae6 100644 --- a/fs/nls/nls_euc-jp.c +++ b/fs/nls/nls_euc-jp.c @@ -268,6 +268,8 @@ static unsigned char euc2sjisibm_g3upper_map[][2] = { {0xFC, 0x4B}, }; +#define MAP_ELEMENT_OF(map) (sizeof(map) / sizeof(map[0])) + static inline int sjisibm2euc(unsigned char *euc, const unsigned char sjis_hi, const unsigned char sjis_lo); static inline int euc2sjisibm_jisx0212(unsigned char *sjis, const unsigned char euc_hi, @@ -308,7 +310,7 @@ static inline int euc2sjisibm_jisx0212(unsigned char *sjis, const unsigned char unsigned short euc; min_index = 0; - max_index = ARRAY_SIZE(euc2sjisibm_jisx0212_map) - 1; + max_index = MAP_ELEMENT_OF(euc2sjisibm_jisx0212_map) - 1; euc = (euc_hi << 8) | euc_lo; while (min_index <= max_index) { @@ -337,7 +339,7 @@ static inline int euc2sjisibm_g3upper(unsigned char *sjis, const unsigned char e else index = ((euc_hi << 8) | euc_lo) - 0xF4A1 + 12; - if ((index < 0) || (index >= ARRAY_SIZE(euc2sjisibm_g3upper_map))) + if ((index < 0) || (index >= MAP_ELEMENT_OF(euc2sjisibm_g3upper_map))) return 0; sjis[0] = euc2sjisibm_g3upper_map[index][0];