From 9c414a07e6e54c8f93719e2b98f9a5dfa379522b Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Tue, 19 May 2015 10:25:45 +0200 Subject: [PATCH] DVR: allow record one event using multiple configurations, fixes #2856 --- src/dvr/dvr_db.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) 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; } -- 2.47.2