| 1203 | } |
| 1204 | |
| 1205 | static int parse_programinformation(AVFormatContext *s, xmlNodePtr node) |
| 1206 | { |
| 1207 | xmlChar *val = NULL; |
| 1208 | |
| 1209 | node = xmlFirstElementChild(node); |
| 1210 | while (node) { |
| 1211 | if (!av_strcasecmp(node->name, "Title")) { |
| 1212 | val = xmlNodeGetContent(node); |
| 1213 | if (val) { |
| 1214 | av_dict_set(&s->metadata, "Title", val, 0); |
| 1215 | } |
| 1216 | } else if (!av_strcasecmp(node->name, "Source")) { |
| 1217 | val = xmlNodeGetContent(node); |
| 1218 | if (val) { |
| 1219 | av_dict_set(&s->metadata, "Source", val, 0); |
| 1220 | } |
| 1221 | } else if (!av_strcasecmp(node->name, "Copyright")) { |
| 1222 | val = xmlNodeGetContent(node); |
| 1223 | if (val) { |
| 1224 | av_dict_set(&s->metadata, "Copyright", val, 0); |
| 1225 | } |
| 1226 | } |
| 1227 | node = xmlNextElementSibling(node); |
| 1228 | xmlFree(val); |
| 1229 | val = NULL; |
| 1230 | } |
| 1231 | return 0; |
| 1232 | } |
| 1233 | |
| 1234 | static int parse_manifest(AVFormatContext *s, const char *url, AVIOContext *in) |
| 1235 | { |
no test coverage detected