Dont crash when deleting recordings and filename is not yet set. Ticket #383
This commit is contained in:
parent
1dd7dd9018
commit
ed2334b2ca
3 changed files with 14 additions and 13 deletions
|
@ -274,7 +274,7 @@ void dvr_extra_time_pre_set(dvr_config_t *cfg, int d);
|
|||
|
||||
void dvr_extra_time_post_set(dvr_config_t *cfg, int d);
|
||||
|
||||
int dvr_entry_delete(dvr_entry_t *de);
|
||||
void dvr_entry_delete(dvr_entry_t *de);
|
||||
|
||||
/**
|
||||
* Query interface
|
||||
|
|
|
@ -1161,17 +1161,18 @@ dvr_val2pri(dvr_prio_t v)
|
|||
return val2str(v, priotab) ?: "invalid";
|
||||
}
|
||||
|
||||
int
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
void
|
||||
dvr_entry_delete(dvr_entry_t *de)
|
||||
{
|
||||
if(!unlink(de->de_filename) || errno == ENOENT) {
|
||||
tvhlog(LOG_DEBUG, "dvr", "Delete recording '%s'", de->de_filename);
|
||||
dvr_entry_remove(de);
|
||||
return 0;
|
||||
} else {
|
||||
tvhlog(LOG_WARNING, "dvr", "Unable to delete recording '%s' -- %s",
|
||||
de->de_filename, strerror(errno));
|
||||
return -1;
|
||||
if(de->de_filename != NULL) {
|
||||
if(unlink(de->de_filename) && errno != ENOENT)
|
||||
tvhlog(LOG_WARNING, "dvr", "Unable to remove file '%s' from disk -- %s",
|
||||
de->de_filename, strerror(errno));
|
||||
}
|
||||
dvr_entry_remove(de);
|
||||
}
|
||||
|
||||
|
|
|
@ -764,7 +764,7 @@ extjs_dvr(http_connection_t *hc, const char *remain, void *opaque)
|
|||
event_t *e;
|
||||
dvr_entry_t *de;
|
||||
const char *s;
|
||||
int flags = 0, retval;
|
||||
int flags = 0;
|
||||
dvr_config_t *cfg;
|
||||
|
||||
if(op == NULL)
|
||||
|
@ -813,10 +813,10 @@ extjs_dvr(http_connection_t *hc, const char *remain, void *opaque)
|
|||
return HTTP_STATUS_BAD_REQUEST;
|
||||
}
|
||||
|
||||
retval = dvr_entry_delete(de);
|
||||
dvr_entry_delete(de);
|
||||
|
||||
out = htsmsg_create_map();
|
||||
htsmsg_add_u32(out, "success", !retval);
|
||||
htsmsg_add_u32(out, "success", 1);
|
||||
|
||||
} else if(!strcmp(op, "createEntry")) {
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue