From: Jaroslav Kysela Date: Mon, 18 Sep 2017 14:13:04 +0000 (+0200) Subject: DVR: handle SM_CODE_USER_REQUEST as a successful case, fixes #4603 X-Git-Tag: v4.2.4~39 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2296cfd326110b3e4294b45ff47d548b623e0060;p=thirdparty%2Ftvheadend.git DVR: handle SM_CODE_USER_REQUEST as a successful case, fixes #4603 --- diff --git a/src/dvr/dvr_db.c b/src/dvr/dvr_db.c index c2d856750..0525ff9b3 100644 --- a/src/dvr/dvr_db.c +++ b/src/dvr/dvr_db.c @@ -142,8 +142,11 @@ int dvr_entry_is_finished(dvr_entry_t *entry, int flags) int removed = entry->de_file_removed || /* Removed by tvheadend */ (entry->de_sched_state != DVR_MISSED_TIME && dvr_get_filesize(entry, 0) == -1); /* Removed externally? */ - int success = entry->de_sched_state == DVR_COMPLETED && - !entry->de_last_error && entry->de_data_errors < DVR_MAX_DATA_ERRORS; + int success = entry->de_sched_state == DVR_COMPLETED; + + if (success && entry->de_last_error != SM_CODE_USER_REQUEST) + success = entry->de_last_error != SM_CODE_OK && + entry->de_data_errors < DVR_MAX_DATA_ERRORS; if ((flags & DVR_FINISHED_REMOVED_SUCCESS) && removed && success) return 1; @@ -642,10 +645,9 @@ dvr_entry_status(dvr_entry_t *de) case SM_CODE_INVALID_TARGET: return N_("File not created"); case SM_CODE_USER_ACCESS: - return N_("User access error"); case SM_CODE_USER_LIMIT: - return N_("User limit reached"); case SM_CODE_NO_SPACE: + case SM_CODE_USER_REQUEST: return streaming_code2txt(de->de_last_error); default: break;