29 #define AV_CAT_SEPARATOR "|"
49 for (i = 0; i != data->
length; i++)
54 return err < 0 ? -1 : 0;
59 char *node_uri = NULL, *tmp_uri;
69 for (i = 0, len = 1; uri[i]; i++)
72 if (++len == UINT_MAX /
sizeof(*nodes)) {
77 if (!(nodes =
av_malloc(
sizeof(*nodes) * len))) {
85 for (i = 0; *uri; i++) {
88 if (!(tmp_uri =
av_realloc(node_uri, len+1))) {
127 int result, total = 0;
135 return total ? total : result;
137 if (i + 1 == data->
length ||
157 for (i = data->
length - 1;
158 i && pos < -nodes[i].
size;
160 pos += nodes[i].
size;
164 for (i = 0; i != data->
current; i++)
165 pos += nodes[i].
size;
170 for (i = 0; i != data->
length - 1 && pos >= nodes[i].
size; i++)
171 pos -= nodes[i].
size;
181 result += nodes[--i].
size;