Mercurial > audlegacy
comparison Plugins/Input/flac/plugin_common/tags.c @ 409:bbbbfd16996c trunk
[svn] Care about pointer signedness.
author | chainsaw |
---|---|
date | Sun, 08 Jan 2006 16:03:37 -0800 |
parents | fa848bd484d8 |
children | f12d7e208b43 |
comparison
equal
deleted
inserted
replaced
408:ee3bf186998e | 409:bbbbfd16996c |
---|---|
71 | 71 |
72 /* calculate length */ | 72 /* calculate length */ |
73 { | 73 { |
74 const char *s, *end; | 74 const char *s, *end; |
75 for (s=src, end=src+length; s<end; chars++) { | 75 for (s=src, end=src+length; s<end; chars++) { |
76 const unsigned n = local__utf8len(s); | 76 const unsigned n = local__utf8len((unsigned char*)s); |
77 if (n == 0) | 77 if (n == 0) |
78 return 0; | 78 return 0; |
79 s += n; | 79 s += n; |
80 } | 80 } |
81 FLAC__ASSERT(s == end); | 81 FLAC__ASSERT(s == end); |
90 | 90 |
91 /* convert */ | 91 /* convert */ |
92 { | 92 { |
93 FLAC__uint16 *u = out; | 93 FLAC__uint16 *u = out; |
94 for ( ; chars; chars--) | 94 for ( ; chars; chars--) |
95 src += local__utf8_to_ucs2(src, u++); | 95 src += local__utf8_to_ucs2((const unsigned char*)src, u++); |
96 } | 96 } |
97 | 97 |
98 return out; | 98 return out; |
99 } | 99 } |
100 | 100 |
146 if (0 == out) | 146 if (0 == out) |
147 return 0; | 147 return 0; |
148 | 148 |
149 /* convert */ | 149 /* convert */ |
150 { | 150 { |
151 char *u = out; | 151 unsigned char *u = (unsigned char*) out; |
152 for ( ; *src; src++) | 152 for ( ; *src; src++) |
153 u += local__ucs2_to_utf8(*src, u); | 153 u += local__ucs2_to_utf8(*src, u); |
154 local__ucs2_to_utf8(*src, u); | 154 local__ucs2_to_utf8(*src, u); |
155 } | 155 } |
156 | 156 |
224 } | 224 } |
225 | 225 |
226 const char *FLAC_plugin__tags_get_tag_utf8(const FLAC__StreamMetadata *tags, const char *name) | 226 const char *FLAC_plugin__tags_get_tag_utf8(const FLAC__StreamMetadata *tags, const char *name) |
227 { | 227 { |
228 const int i = FLAC__metadata_object_vorbiscomment_find_entry_from(tags, /*offset=*/0, name); | 228 const int i = FLAC__metadata_object_vorbiscomment_find_entry_from(tags, /*offset=*/0, name); |
229 return (i < 0? 0 : strchr(tags->data.vorbis_comment.comments[i].entry, '=')+1); | 229 return (i < 0? 0 : strchr((const char*)tags->data.vorbis_comment.comments[i].entry, '=')+1); |
230 } | 230 } |
231 | 231 |
232 FLAC__uint16 *FLAC_plugin__tags_get_tag_ucs2(const FLAC__StreamMetadata *tags, const char *name) | 232 FLAC__uint16 *FLAC_plugin__tags_get_tag_ucs2(const FLAC__StreamMetadata *tags, const char *name) |
233 { | 233 { |
234 const char *utf8 = FLAC_plugin__tags_get_tag_utf8(tags, name); | 234 const char *utf8 = FLAC_plugin__tags_get_tag_utf8(tags, name); |