Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
DVR: When data errors crosses a threshold (10000) mark recordings as …
…invalid, fixes #3629
  • Loading branch information
perexg committed Mar 14, 2016
1 parent 4b6c25a commit ae6c645
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 1 deletion.
4 changes: 3 additions & 1 deletion src/api/api_dvr.c
Expand Up @@ -66,7 +66,9 @@ api_dvr_config_create
static int is_dvr_entry_finished(dvr_entry_t *entry)
{
dvr_entry_sched_state_t state = entry->de_sched_state;
return state == DVR_COMPLETED && !entry->de_last_error && dvr_get_filesize(entry, 0) != -1;
return state == DVR_COMPLETED && !entry->de_last_error &&
dvr_get_filesize(entry, 0) != -1 &&
entry->de_data_errors < DVR_MAX_DATA_ERRORS;
}

static int is_dvr_entry_upcoming(dvr_entry_t *entry)
Expand Down
2 changes: 2 additions & 0 deletions src/dvr/dvr.h
Expand Up @@ -28,6 +28,8 @@
#include "lang_str.h"
#include "tvhvfs.h"

#define DVR_MAX_DATA_ERRORS (10000)

#define DVR_FILESIZE_UPDATE (1<<0)
#define DVR_FILESIZE_TOTAL (1<<1)

Expand Down
2 changes: 2 additions & 0 deletions src/dvr/dvr_db.c
Expand Up @@ -509,6 +509,8 @@ dvr_entry_status(dvr_entry_t *de)
default:
break;
}
if(de->de_data_errors >= DVR_MAX_DATA_ERRORS) /* user configurable threshold? */
return N_("Too many data errors");
if(dvr_get_filesize(de, 0) == -1)
return N_("File missing");
if(de->de_last_error)
Expand Down

0 comments on commit ae6c645

Please sign in to comment.