… | |
… | |
109 | psiconv_ucs2 **output) |
109 | psiconv_ucs2 **output) |
110 | { |
110 | { |
111 | int i; |
111 | int i; |
112 | if (!output) |
112 | if (!output) |
113 | return PSICONV_E_NOMEM; |
113 | return PSICONV_E_NOMEM; |
114 | if (!(*output = malloc(sizeof(**output) * (1 + strlen(input))))) |
114 | if (!(*output = malloc(sizeof(**output) * (1 + strlen((const char *) input))))) |
115 | return PSICONV_E_NOMEM; |
115 | return PSICONV_E_NOMEM; |
116 | for (i = 0; i < strlen(input); i++) |
116 | for (i = 0; i < strlen((const char *) input); i++) |
117 | (*output)[i] = psiconv_unicode_from_char(config,input[i]); |
117 | (*output)[i] = psiconv_unicode_from_char(config,input[i]); |
118 | (*output)[i] = 0x0000; |
118 | (*output)[i] = 0x0000; |
119 | return PSICONV_E_OK; |
119 | return PSICONV_E_OK; |
120 | } |
120 | } |
121 | |
121 | |
… | |
… | |
144 | } |
144 | } |
145 | |
145 | |
146 | psiconv_ucs2 *psiconv_unicode_strdup(const psiconv_ucs2 *input) |
146 | psiconv_ucs2 *psiconv_unicode_strdup(const psiconv_ucs2 *input) |
147 | { |
147 | { |
148 | psiconv_ucs2 *output; |
148 | psiconv_ucs2 *output; |
149 | int i = 0; |
149 | int i = 0; |
150 | |
150 | |
151 | if (!(output = malloc(sizeof(*output) * |
151 | if (!(output = malloc(sizeof(*output) * |
152 | (1 + psiconv_unicode_strlen(input))))) |
152 | (1 + psiconv_unicode_strlen(input))))) |
153 | return NULL; |
153 | return NULL; |
154 | while ((output[i] = input[i])) |
154 | while ((output[i] = input[i])) |