Stop crash if existing sub exists where all services are currently less than 10%. Fixes #1289

This commit is contained in:
Adam Sutton 2012-10-02 15:22:05 +01:00
parent 90c5b58389
commit 4310485eb0

View file

@ -364,6 +364,8 @@ service_find(channel_t *ch, unsigned int weight, const char *loginfo,
/* First, try all services without stealing */
for(i = off; i < cnt; i++) {
t = vec[i];
if(t->s_status == SERVICE_RUNNING)
return t;
if(t->s_quality_index(t) < 10) {
if(loginfo != NULL) {
tvhlog(LOG_NOTICE, "Service",
@ -375,9 +377,6 @@ service_find(channel_t *ch, unsigned int weight, const char *loginfo,
}
tvhlog(LOG_DEBUG, "Service", "%s: Probing adapter \"%s\" without stealing for service \"%s\"",
loginfo, service_adapter_nicename(t), service_nicename(t));
if(t->s_status == SERVICE_RUNNING)
return t;
if((r = service_start(t, 0, 0)) == 0)
return t;
if(loginfo != NULL)