diff --git a/src/dvr/dvr_db.c b/src/dvr/dvr_db.c index 254c7745..365d8f14 100644 --- a/src/dvr/dvr_db.c +++ b/src/dvr/dvr_db.c @@ -1164,14 +1164,14 @@ dvr_val2pri(dvr_prio_t v) int dvr_entry_delete(dvr_entry_t *de) { - int result; - tvhlog(LOG_DEBUG, "dvr_db", "Going to delete recording '%s'", de->de_filename); - result = unlink(de->de_filename); - if( result == 0 || result == ENOENT ) - { + 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; } - return result; - } diff --git a/src/webui/extjs.c b/src/webui/extjs.c index 09349a05..7468dea2 100644 --- a/src/webui/extjs.c +++ b/src/webui/extjs.c @@ -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; + int flags = 0, retval; dvr_config_t *cfg; if(op == NULL) @@ -804,7 +804,7 @@ extjs_dvr(http_connection_t *hc, const char *remain, void *opaque) out = htsmsg_create_map(); htsmsg_add_u32(out, "success", 1); - + } else if(!strcmp(op, "deleteEntry")) { s = http_arg_get(&hc->hc_req_args, "entryId"); @@ -813,10 +813,10 @@ extjs_dvr(http_connection_t *hc, const char *remain, void *opaque) return HTTP_STATUS_BAD_REQUEST; } - dvr_entry_delete(de); + retval = dvr_entry_delete(de); out = htsmsg_create_map(); - htsmsg_add_u32(out, "success", 1); + htsmsg_add_u32(out, "success", !retval); } else if(!strcmp(op, "createEntry")) { diff --git a/src/webui/static/app/dvr.js b/src/webui/static/app/dvr.js index 7439c7a8..a2129b98 100644 --- a/src/webui/static/app/dvr.js +++ b/src/webui/static/app/dvr.js @@ -103,7 +103,6 @@ tvheadend.dvrDetails = function(entry) { win.addButton({ handler: deleteEvent, text: "Delete recording" - }); break; } @@ -127,7 +126,7 @@ tvheadend.dvrDetails = function(entry) { } }); } - + function deleteEvent() { Ext.Ajax.request({ url: 'dvr',