upnpsoap: fix samsung bookmarks

This makes the bookmark functionality work as expected on Samsung E series.
Adapted from http://sourceforge.net/p/minidlna/discussion/879956/thread/1a711ef6/ and
http://sourceforge.net/p/minidlna/bugs/197/.

Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
This commit is contained in:
Spencer Oliver 2013-12-05 21:56:03 +00:00 committed by Justin Maggard
parent e2c73f163d
commit 7e6b015b05

View File

@ -332,9 +332,15 @@ set_filter_flags(char *filter, struct upnphttp *h)
uint32_t flags = 0;
int samsung = client_types[h->req_client].flags & FLAG_SAMSUNG;
if( !filter || (strlen(filter) <= 1) )
/* Not the full 32 bits. Skip vendor-specific stuff by default. */
return 0xFFFFFF;
if( !filter || (strlen(filter) <= 1) ) {
if (strcmp(filter, "*") == 0 && samsung) {
return 0xFFFFFFFF; /* We want FILTER_SEC_DCM_INFO */
} else {
/* Not the full 32 bits. Skip vendor-specific stuff by default. */
return 0xFFFFFF;
}
}
if( samsung )
flags |= FILTER_DLNA_NAMESPACE;
item = strtok_r(filter, ",", &saveptr);