Lines Matching refs:convd

126 	mbfl_buffer_converter *convd;  in mbfl_buffer_converter_new()  local
129 convd = (mbfl_buffer_converter*)mbfl_malloc(sizeof(mbfl_buffer_converter)); in mbfl_buffer_converter_new()
130 if (convd == NULL) { in mbfl_buffer_converter_new()
135 convd->from = from; in mbfl_buffer_converter_new()
136 convd->to = to; in mbfl_buffer_converter_new()
139 convd->filter1 = NULL; in mbfl_buffer_converter_new()
140 convd->filter2 = NULL; in mbfl_buffer_converter_new()
141 if (mbfl_convert_filter_get_vtbl(convd->from, convd->to) != NULL) { in mbfl_buffer_converter_new()
142convd->filter1 = mbfl_convert_filter_new(convd->from, convd->to, mbfl_memory_device_output, NULL, … in mbfl_buffer_converter_new()
144convd->filter2 = mbfl_convert_filter_new(&mbfl_encoding_wchar, convd->to, mbfl_memory_device_outpu… in mbfl_buffer_converter_new()
145 if (convd->filter2 != NULL) { in mbfl_buffer_converter_new()
146 convd->filter1 = mbfl_convert_filter_new(convd->from, in mbfl_buffer_converter_new()
148 (int (*)(int, void*))convd->filter2->filter_function, in mbfl_buffer_converter_new()
149 (int (*)(void*))convd->filter2->filter_flush, in mbfl_buffer_converter_new()
150 convd->filter2); in mbfl_buffer_converter_new()
151 if (convd->filter1 == NULL) { in mbfl_buffer_converter_new()
152 mbfl_convert_filter_delete(convd->filter2); in mbfl_buffer_converter_new()
156 if (convd->filter1 == NULL) { in mbfl_buffer_converter_new()
157 mbfl_free(convd); in mbfl_buffer_converter_new()
161 mbfl_memory_device_init(&convd->device, buf_initsz, buf_initsz/4); in mbfl_buffer_converter_new()
163 return convd; in mbfl_buffer_converter_new()
168 mbfl_buffer_converter_delete(mbfl_buffer_converter *convd) in mbfl_buffer_converter_delete() argument
170 if (convd != NULL) { in mbfl_buffer_converter_delete()
171 if (convd->filter1) { in mbfl_buffer_converter_delete()
172 mbfl_convert_filter_delete(convd->filter1); in mbfl_buffer_converter_delete()
174 if (convd->filter2) { in mbfl_buffer_converter_delete()
175 mbfl_convert_filter_delete(convd->filter2); in mbfl_buffer_converter_delete()
177 mbfl_memory_device_clear(&convd->device); in mbfl_buffer_converter_delete()
178 mbfl_free((void*)convd); in mbfl_buffer_converter_delete()
183 mbfl_buffer_converter_reset(mbfl_buffer_converter *convd) in mbfl_buffer_converter_reset() argument
185 mbfl_memory_device_reset(&convd->device); in mbfl_buffer_converter_reset()
189 mbfl_buffer_converter_illegal_mode(mbfl_buffer_converter *convd, int mode) in mbfl_buffer_converter_illegal_mode() argument
191 if (convd != NULL) { in mbfl_buffer_converter_illegal_mode()
192 if (convd->filter2 != NULL) { in mbfl_buffer_converter_illegal_mode()
193 convd->filter2->illegal_mode = mode; in mbfl_buffer_converter_illegal_mode()
194 } else if (convd->filter1 != NULL) { in mbfl_buffer_converter_illegal_mode()
195 convd->filter1->illegal_mode = mode; in mbfl_buffer_converter_illegal_mode()
205 mbfl_buffer_converter_illegal_substchar(mbfl_buffer_converter *convd, int substchar) in mbfl_buffer_converter_illegal_substchar() argument
207 if (convd != NULL) { in mbfl_buffer_converter_illegal_substchar()
208 if (convd->filter2 != NULL) { in mbfl_buffer_converter_illegal_substchar()
209 convd->filter2->illegal_substchar = substchar; in mbfl_buffer_converter_illegal_substchar()
210 } else if (convd->filter1 != NULL) { in mbfl_buffer_converter_illegal_substchar()
211 convd->filter1->illegal_substchar = substchar; in mbfl_buffer_converter_illegal_substchar()
221 mbfl_buffer_converter_strncat(mbfl_buffer_converter *convd, const unsigned char *p, size_t n) in mbfl_buffer_converter_strncat() argument
226 if (convd != NULL && p != NULL) { in mbfl_buffer_converter_strncat()
227 filter = convd->filter1; in mbfl_buffer_converter_strncat()
243 mbfl_buffer_converter_feed(mbfl_buffer_converter *convd, mbfl_string *string) in mbfl_buffer_converter_feed() argument
245 return mbfl_buffer_converter_feed2(convd, string, NULL); in mbfl_buffer_converter_feed()
249 mbfl_buffer_converter_feed2(mbfl_buffer_converter *convd, mbfl_string *string, size_t *loc) in mbfl_buffer_converter_feed2() argument
256 if (convd == NULL || string == NULL) { in mbfl_buffer_converter_feed2()
259 mbfl_memory_device_realloc(&convd->device, convd->device.pos + string->len, string->len/4); in mbfl_buffer_converter_feed2()
264 filter = convd->filter1; in mbfl_buffer_converter_feed2()
285 mbfl_buffer_converter_flush(mbfl_buffer_converter *convd) in mbfl_buffer_converter_flush() argument
287 if (convd == NULL) { in mbfl_buffer_converter_flush()
291 if (convd->filter1 != NULL) { in mbfl_buffer_converter_flush()
292 mbfl_convert_filter_flush(convd->filter1); in mbfl_buffer_converter_flush()
294 if (convd->filter2 != NULL) { in mbfl_buffer_converter_flush()
295 mbfl_convert_filter_flush(convd->filter2); in mbfl_buffer_converter_flush()
302 mbfl_buffer_converter_getbuffer(mbfl_buffer_converter *convd, mbfl_string *result) in mbfl_buffer_converter_getbuffer() argument
304 if (convd != NULL && result != NULL && convd->device.buffer != NULL) { in mbfl_buffer_converter_getbuffer()
305 result->encoding = convd->to; in mbfl_buffer_converter_getbuffer()
306 result->val = convd->device.buffer; in mbfl_buffer_converter_getbuffer()
307 result->len = convd->device.pos; in mbfl_buffer_converter_getbuffer()
316 mbfl_buffer_converter_result(mbfl_buffer_converter *convd, mbfl_string *result) in mbfl_buffer_converter_result() argument
318 if (convd == NULL || result == NULL) { in mbfl_buffer_converter_result()
321 result->encoding = convd->to; in mbfl_buffer_converter_result()
322 return mbfl_memory_device_result(&convd->device, result); in mbfl_buffer_converter_result()
326 mbfl_buffer_converter_feed_result(mbfl_buffer_converter *convd, mbfl_string *string, in mbfl_buffer_converter_feed_result() argument
329 if (convd == NULL || string == NULL || result == NULL) { in mbfl_buffer_converter_feed_result()
332 mbfl_buffer_converter_feed(convd, string); in mbfl_buffer_converter_feed_result()
333 if (convd->filter1 != NULL) { in mbfl_buffer_converter_feed_result()
334 mbfl_convert_filter_flush(convd->filter1); in mbfl_buffer_converter_feed_result()
336 if (convd->filter2 != NULL) { in mbfl_buffer_converter_feed_result()
337 mbfl_convert_filter_flush(convd->filter2); in mbfl_buffer_converter_feed_result()
339 result->encoding = convd->to; in mbfl_buffer_converter_feed_result()
340 return mbfl_memory_device_result(&convd->device, result); in mbfl_buffer_converter_feed_result()
343 size_t mbfl_buffer_illegalchars(mbfl_buffer_converter *convd) in mbfl_buffer_illegalchars() argument
347 if (convd == NULL) { in mbfl_buffer_illegalchars()
351 if (convd->filter1 != NULL) { in mbfl_buffer_illegalchars()
352 num_illegalchars += convd->filter1->num_illegalchar; in mbfl_buffer_illegalchars()
355 if (convd->filter2 != NULL) { in mbfl_buffer_illegalchars()
356 num_illegalchars += convd->filter2->num_illegalchar; in mbfl_buffer_illegalchars()