Lines Matching refs:matchlet
69 XdgMimeMagicMatchlet *matchlet; member
103 XdgMimeMagicMatchlet *matchlet; in _xdg_mime_magic_matchlet_new() local
105 matchlet = malloc (sizeof (XdgMimeMagicMatchlet)); in _xdg_mime_magic_matchlet_new()
107 matchlet->indent = 0; in _xdg_mime_magic_matchlet_new()
108 matchlet->offset = 0; in _xdg_mime_magic_matchlet_new()
109 matchlet->value_length = 0; in _xdg_mime_magic_matchlet_new()
110 matchlet->value = NULL; in _xdg_mime_magic_matchlet_new()
111 matchlet->mask = NULL; in _xdg_mime_magic_matchlet_new()
112 matchlet->range_length = 1; in _xdg_mime_magic_matchlet_new()
113 matchlet->word_size = 1; in _xdg_mime_magic_matchlet_new()
114 matchlet->next = NULL; in _xdg_mime_magic_matchlet_new()
116 return matchlet; in _xdg_mime_magic_matchlet_new()
150 if (ptr->matchlet) in _xdg_mime_magic_match_free()
151 _xdg_mime_magic_matchlet_free (ptr->matchlet); in _xdg_mime_magic_match_free()
316 XdgMimeMagicMatchlet *matchlet; in _xdg_mime_magic_parse_magic_line() local
354 matchlet = _xdg_mime_magic_matchlet_new (); in _xdg_mime_magic_parse_magic_line()
355 matchlet->indent = indent; in _xdg_mime_magic_parse_magic_line()
356 matchlet->offset = _xdg_mime_magic_read_a_number (magic_file, &end_of_file); in _xdg_mime_magic_parse_magic_line()
359 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
362 if (matchlet->offset == -1) in _xdg_mime_magic_parse_magic_line()
364 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
370 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
375 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
380 matchlet->value_length = 0; in _xdg_mime_magic_parse_magic_line()
384 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
387 matchlet->value_length = c & 0xFF; in _xdg_mime_magic_parse_magic_line()
388 matchlet->value_length = matchlet->value_length << 8; in _xdg_mime_magic_parse_magic_line()
393 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
396 matchlet->value_length = matchlet->value_length + (c & 0xFF); in _xdg_mime_magic_parse_magic_line()
398 matchlet->value = malloc (matchlet->value_length); in _xdg_mime_magic_parse_magic_line()
401 if (matchlet->value == NULL) in _xdg_mime_magic_parse_magic_line()
403 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
406 bytes_read = fread (matchlet->value, 1, matchlet->value_length, magic_file); in _xdg_mime_magic_parse_magic_line()
407 if (bytes_read != matchlet->value_length) in _xdg_mime_magic_parse_magic_line()
409 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
419 matchlet->mask = malloc (matchlet->value_length); in _xdg_mime_magic_parse_magic_line()
421 if (matchlet->mask == NULL) in _xdg_mime_magic_parse_magic_line()
423 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
426 bytes_read = fread (matchlet->mask, 1, matchlet->value_length, magic_file); in _xdg_mime_magic_parse_magic_line()
427 if (bytes_read != matchlet->value_length) in _xdg_mime_magic_parse_magic_line()
429 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
440 matchlet->word_size = _xdg_mime_magic_read_a_number (magic_file, &end_of_file); in _xdg_mime_magic_parse_magic_line()
443 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
446 if (matchlet->word_size != 0 && in _xdg_mime_magic_parse_magic_line()
447 matchlet->word_size != 1 && in _xdg_mime_magic_parse_magic_line()
448 matchlet->word_size != 2 && in _xdg_mime_magic_parse_magic_line()
449 matchlet->word_size != 4) in _xdg_mime_magic_parse_magic_line()
451 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
459 matchlet->range_length = _xdg_mime_magic_read_a_number (magic_file, &end_of_file); in _xdg_mime_magic_parse_magic_line()
462 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
465 if (matchlet->range_length == -1) in _xdg_mime_magic_parse_magic_line()
467 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
477 if (matchlet->word_size > 1) in _xdg_mime_magic_parse_magic_line()
480 if (matchlet->value_length % matchlet->word_size != 0) in _xdg_mime_magic_parse_magic_line()
482 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
487 for (i = 0; i < matchlet->value_length; i = i + matchlet->word_size) in _xdg_mime_magic_parse_magic_line()
489 if (matchlet->word_size == 2) in _xdg_mime_magic_parse_magic_line()
490 …*((xdg_uint16_t *) matchlet->value + i) = SWAP_BE16_TO_LE16 (*((xdg_uint16_t *) (matchlet->value +… in _xdg_mime_magic_parse_magic_line()
491 else if (matchlet->word_size == 4) in _xdg_mime_magic_parse_magic_line()
492 …*((xdg_uint32_t *) matchlet->value + i) = SWAP_BE32_TO_LE32 (*((xdg_uint32_t *) (matchlet->value +… in _xdg_mime_magic_parse_magic_line()
493 if (matchlet->mask) in _xdg_mime_magic_parse_magic_line()
495 if (matchlet->word_size == 2) in _xdg_mime_magic_parse_magic_line()
496 …*((xdg_uint16_t *) matchlet->mask + i) = SWAP_BE16_TO_LE16 (*((xdg_uint16_t *) (matchlet->mask + i… in _xdg_mime_magic_parse_magic_line()
497 else if (matchlet->word_size == 4) in _xdg_mime_magic_parse_magic_line()
498 …*((xdg_uint32_t *) matchlet->mask + i) = SWAP_BE32_TO_LE32 (*((xdg_uint32_t *) (matchlet->mask + i… in _xdg_mime_magic_parse_magic_line()
505 matchlet->next = match->matchlet; in _xdg_mime_magic_parse_magic_line()
506 match->matchlet = matchlet; in _xdg_mime_magic_parse_magic_line()
512 _xdg_mime_magic_matchlet_free (matchlet); in _xdg_mime_magic_parse_magic_line()
520 _xdg_mime_magic_matchlet_compare_to_data (XdgMimeMagicMatchlet *matchlet, in _xdg_mime_magic_matchlet_compare_to_data() argument
525 for (i = matchlet->offset; i < matchlet->offset + matchlet->range_length; i++) in _xdg_mime_magic_matchlet_compare_to_data()
529 if (i + matchlet->value_length > len) in _xdg_mime_magic_matchlet_compare_to_data()
532 if (matchlet->mask) in _xdg_mime_magic_matchlet_compare_to_data()
534 for (j = 0; j < matchlet->value_length; j++) in _xdg_mime_magic_matchlet_compare_to_data()
536 if ((matchlet->value[j] & matchlet->mask[j]) != in _xdg_mime_magic_matchlet_compare_to_data()
537 ((((unsigned char *) data)[j + i]) & matchlet->mask[j])) in _xdg_mime_magic_matchlet_compare_to_data()
546 for (j = 0; j < matchlet->value_length; j++) in _xdg_mime_magic_matchlet_compare_to_data()
548 if (matchlet->value[j] != ((unsigned char *) data)[j + i]) in _xdg_mime_magic_matchlet_compare_to_data()
562 _xdg_mime_magic_matchlet_compare_level (XdgMimeMagicMatchlet *matchlet, in _xdg_mime_magic_matchlet_compare_level() argument
567 while ((matchlet != NULL) && (matchlet->indent == indent)) in _xdg_mime_magic_matchlet_compare_level()
569 if (_xdg_mime_magic_matchlet_compare_to_data (matchlet, data, len)) in _xdg_mime_magic_matchlet_compare_level()
571 if ((matchlet->next == NULL) || in _xdg_mime_magic_matchlet_compare_level()
572 (matchlet->next->indent <= indent)) in _xdg_mime_magic_matchlet_compare_level()
575 if (_xdg_mime_magic_matchlet_compare_level (matchlet->next, in _xdg_mime_magic_matchlet_compare_level()
584 matchlet = matchlet->next; in _xdg_mime_magic_matchlet_compare_level()
586 while (matchlet && matchlet->indent > indent); in _xdg_mime_magic_matchlet_compare_level()
597 return _xdg_mime_magic_matchlet_compare_level (match->matchlet, data, len, 0); in _xdg_mime_magic_match_compare_to_data()
712 XdgMimeMagicMatchlet *matchlet; in _xdg_mime_update_mime_magic_extents() local
714 for (matchlet = match->matchlet; matchlet; matchlet = matchlet->next) in _xdg_mime_update_mime_magic_extents()
718 extent = matchlet->value_length + matchlet->offset + matchlet->range_length; in _xdg_mime_update_mime_magic_extents()
740 XdgMimeMagicMatchlet *matchlet; in _xdg_mime_magic_matchlet_mirror() local
742 matchlet = tmp; in _xdg_mime_magic_matchlet_mirror()
744 matchlet->next = new_list; in _xdg_mime_magic_matchlet_mirror()
745 new_list = matchlet; in _xdg_mime_magic_matchlet_mirror()
776 match->matchlet = _xdg_mime_magic_matchlet_mirror (match->matchlet); in _xdg_mime_magic_read_magic_file()