diff options
Diffstat (limited to 'source3/lib')
-rw-r--r-- | source3/lib/kanji.c | 2 | ||||
-rw-r--r-- | source3/lib/util.c | 11 |
2 files changed, 9 insertions, 4 deletions
diff --git a/source3/lib/kanji.c b/source3/lib/kanji.c index 4ca5984d80..04eecb5437 100644 --- a/source3/lib/kanji.c +++ b/source3/lib/kanji.c @@ -1173,6 +1173,7 @@ void initialize_multibyte_vectors( int client_codepage) multibyte_strtok = (char *(*)(char *, char *)) generic_multibyte_strtok; _skip_multibyte_char = skip_generic_multibyte_char; is_multibyte_char_1 = hangul_is_multibyte_char_1; + break; case BIG5_CODEPAGE: multibyte_strchr = (char *(*)(char *, int )) generic_multibyte_strchr; multibyte_strrchr = (char *(*)(char *, int )) generic_multibyte_strrchr; @@ -1180,6 +1181,7 @@ void initialize_multibyte_vectors( int client_codepage) multibyte_strtok = (char *(*)(char *, char *)) generic_multibyte_strtok; _skip_multibyte_char = skip_generic_multibyte_char; is_multibyte_char_1 = big5_is_multibyte_char_1; + break; case SIMPLIFIED_CHINESE_CODEPAGE: multibyte_strchr = (char *(*)(char *, int )) generic_multibyte_strchr; multibyte_strrchr = (char *(*)(char *, int )) generic_multibyte_strrchr; diff --git a/source3/lib/util.c b/source3/lib/util.c index e82abf8c7c..8561c4f3f4 100644 --- a/source3/lib/util.c +++ b/source3/lib/util.c @@ -2454,10 +2454,13 @@ BOOL string_init(char **dest,char *src) if (l == 0) { - if (!null_string) - null_string = (char *)malloc(1); - - *null_string = 0; + if (!null_string) { + if((null_string = (char *)malloc(1)) == NULL) { + DEBUG(0,("string_init: malloc fail for null_string.\n")); + return False; + } + *null_string = 0; + } *dest = null_string; } else |