mirror of
https://github.com/rofafor/vdr-plugin-satip.git
synced 2023-10-10 13:37:42 +02:00
Added a compile-time option to split any mixed model server into several single ones.
This commit is contained in:
parent
21261f8042
commit
bcb11b6257
10
Makefile
10
Makefile
@ -14,6 +14,10 @@
|
||||
|
||||
#SATIP_XCI = 1
|
||||
|
||||
# Split any mixed model server into several single ones
|
||||
|
||||
#SATIP_USE_SINGLE_MODEL_SERVERS_ONLY = 1
|
||||
|
||||
# Strip debug symbols? Set eg. to /bin/true if not
|
||||
|
||||
STRIP = strip
|
||||
@ -91,6 +95,12 @@ DEFINES += -DXCI
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef SATIP_USE_SINGLE_MODEL_SERVERS_ONLY
|
||||
ifeq ($(SATIP_USE_SINGLE_MODEL_SERVERS_ONLY),1)
|
||||
DEFINES += -DUSE_SINGLE_MODEL_SERVERS_ONLY
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(strip $(GITTAG)),)
|
||||
DEFINES += -DGITVERSION='"-GIT-$(GITTAG)"'
|
||||
endif
|
||||
|
18
discover.c
18
discover.c
@ -233,6 +233,23 @@ void cSatipDiscover::AddServer(const char *addrP, const char *modelP, const char
|
||||
{
|
||||
debug1("%s (%s, %s, %s)", __PRETTY_FUNCTION__, addrP, modelP, descP);
|
||||
cMutexLock MutexLock(&mutexM);
|
||||
#ifdef USE_SINGLE_MODEL_SERVERS_ONLY
|
||||
int n = 0;
|
||||
char *s, *p = (char *)modelP;
|
||||
char *r = strtok_r(p, ",", &s);
|
||||
while (r) {
|
||||
r = skipspace(r);
|
||||
cString desc = cString::sprintf("%s #%d", descP, n++);
|
||||
cSatipServer *tmp = new cSatipServer(addrP, r, desc);
|
||||
if (!serversM.Update(tmp)) {
|
||||
info("Adding server '%s|%s|%s'", tmp->Address(), tmp->Model(), tmp->Description());
|
||||
serversM.Add(tmp);
|
||||
}
|
||||
else
|
||||
DELETENULL(tmp);
|
||||
r = strtok_r(NULL, ",\n", &s);
|
||||
}
|
||||
#else
|
||||
cSatipServer *tmp = new cSatipServer(addrP, modelP, descP);
|
||||
// Validate against existing servers
|
||||
if (!serversM.Update(tmp)) {
|
||||
@ -241,6 +258,7 @@ void cSatipDiscover::AddServer(const char *addrP, const char *modelP, const char
|
||||
}
|
||||
else
|
||||
DELETENULL(tmp);
|
||||
#endif
|
||||
}
|
||||
|
||||
int cSatipDiscover::GetServerCount(void)
|
||||
|
8
server.c
8
server.c
@ -99,7 +99,13 @@ cSatipServer::~cSatipServer()
|
||||
int cSatipServer::Compare(const cListObject &listObjectP) const
|
||||
{
|
||||
const cSatipServer *s = (const cSatipServer *)&listObjectP;
|
||||
return strcasecmp(*addressM, *s->addressM);
|
||||
int result = strcasecmp(*addressM, *s->addressM);
|
||||
if (!result) {
|
||||
result = strcasecmp(*modelM, *s->modelM);
|
||||
if (!result)
|
||||
result = strcasecmp(*descriptionM, *s->descriptionM);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
void cSatipServer::Use(bool onOffP)
|
||||
|
Loading…
Reference in New Issue
Block a user