diff options
Diffstat (limited to 'src/c_subst.c')
-rw-r--r-- | src/c_subst.c | 34 |
1 files changed, 19 insertions, 15 deletions
diff --git a/src/c_subst.c b/src/c_subst.c index b589552..4b410ab 100644 --- a/src/c_subst.c +++ b/src/c_subst.c @@ -204,21 +204,25 @@ c_unicode_subst(char filename[]) p = filename; while (*p != 0x00) { - if ( - u_ischarset(*p, C_CHARSET_A_MAJ) == TRUE || - u_ischarset(*p, C_CHARSET_A_MIN) == TRUE - ) { - *p = 'a'; - memmove(p + 1, p + 2, (strlen(p + 2) + 1) * sizeof(char)); - c_unicode_subst(filename); - } - if ( - u_ischarset(*p, C_CHARSET_O_MAJ) == TRUE || - u_ischarset(*p, C_CHARSET_O_MIN) == TRUE - ) { - *p = 'o'; - memmove(p + 1, p + 2, (strlen(p + 2) + 1) * sizeof(char)); - c_unicode_subst(filename); + if (*p == -61) { + if ( + u_ischarset(*p, C_CHARSET_A_MAJ) == TRUE || + u_ischarset(*p, C_CHARSET_A_MIN) == TRUE + ) { + printf(">>>>{%hhd}\n", *p); + printf(">>>>{%hhd}\n", *(p + 1)); + *p = 'a'; + memmove(p + 1, p + 2, (strlen(p + 2) + 1) * sizeof(char)); + c_unicode_subst(filename); + } + if ( + u_ischarset(*p, C_CHARSET_O_MAJ) == TRUE || + u_ischarset(*p, C_CHARSET_O_MIN) == TRUE + ) { + *p = 'o'; + memmove(p + 1, p + 2, (strlen(p + 2) + 1) * sizeof(char)); + c_unicode_subst(filename); + } } p++; } |