]> git.ipfire.org Git - thirdparty/tvheadend.git/commitdiff
DVR: handle SM_CODE_USER_REQUEST as a successful case, fixes #4603
authorJaroslav Kysela <perex@perex.cz>
Mon, 18 Sep 2017 14:13:04 +0000 (16:13 +0200)
committerJaroslav Kysela <perex@perex.cz>
Mon, 18 Sep 2017 14:13:50 +0000 (16:13 +0200)
src/dvr/dvr_db.c

index c2d8567502d5ebd76874f13cd0c8d141ffacd243..0525ff9b355bb9f73896391165d706a06cba014d 100644 (file)
@@ -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;