From: Jaroslav Kysela Date: Tue, 19 May 2015 08:25:45 +0000 (+0200) Subject: DVR: allow record one event using multiple configurations, fixes #2856 X-Git-Tag: v4.2.1~2520 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9c414a07e6e54c8f93719e2b98f9a5dfa379522b;p=thirdparty%2Ftvheadend.git DVR: allow record one event using multiple configurations, fixes #2856 --- diff --git a/src/dvr/dvr_db.c b/src/dvr/dvr_db.c index 4deb9d448..09458bb82 100644 --- a/src/dvr/dvr_db.c +++ b/src/dvr/dvr_db.c @@ -486,8 +486,18 @@ dvr_entry_create(const char *uuid, htsmsg_t *conf) if (de->de_channel) { LIST_FOREACH(de2, &de->de_channel->ch_dvrs, de_channel_link) if(de2 != de && + de2->de_channel == de->de_channel && + de2->de_config == de->de_config && de2->de_start == de->de_start && - de2->de_sched_state != DVR_COMPLETED) { + de2->de_sched_state != DVR_COMPLETED && + de2->de_sched_state != DVR_MISSED_TIME && + strcmp(de2->de_owner ?: "", de->de_owner ?: "") == 0) { + tvhlog(LOG_INFO, "dvr", "delete entry %s \"%s\" on \"%s\" start time %"PRId64", " + "scheduled for recording by \"%s\" (duplicate with %s)", + idnode_uuid_as_str(&de->de_id), + lang_str_get(de->de_title, NULL), DVR_CH_NAME(de), + (int64_t)de2->de_start, de->de_creator ?: "", + idnode_uuid_as_str(&de2->de_id)); dvr_entry_destroy(de, 0); return NULL; }