api_dvr_entry_rerecord_toggle
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_dvr_rerecord_toggle, "rerecord");
+ return api_idnode_handler(perm, args, resp, api_dvr_rerecord_toggle, "rerecord", 0);
}
static void
api_dvr_entry_rerecord_deny
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_dvr_rerecord_deny, "rerecord");
+ return api_idnode_handler(perm, args, resp, api_dvr_rerecord_deny, "rerecord", 0);
}
static void
api_dvr_entry_rerecord_allow
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_dvr_rerecord_allow, "rerecord");
+ return api_idnode_handler(perm, args, resp, api_dvr_rerecord_allow, "rerecord", 0);
}
static void
api_dvr_entry_stop
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_dvr_stop, "stop");
+ return api_idnode_handler(perm, args, resp, api_dvr_stop, "stop", 0);
}
static void
api_dvr_entry_cancel
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_dvr_cancel, "cancel");
+ return api_idnode_handler(perm, args, resp, api_dvr_cancel, "cancel", 0);
}
static void
api_dvr_entry_move_finished
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_dvr_move_finished, "move finished");
+ return api_idnode_handler(perm, args, resp, api_dvr_move_finished, "move finished", 0);
}
static void
api_dvr_entry_move_failed
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_dvr_move_failed, "move failed");
+ return api_idnode_handler(perm, args, resp, api_dvr_move_failed, "move failed", 0);
}
static void
api_idnode_handler
( access_t *perm, htsmsg_t *args, htsmsg_t **resp,
void (*handler)(access_t *perm, idnode_t *in),
- const char *op )
+ const char *op, int destroyed )
{
int err = 0;
idnode_t *in;
continue;
}
handler(perm, in);
- idnode_perm_unset(in);
+ if (!destroyed)
+ idnode_perm_unset(in);
cnt++;
}
htsmsg_destroy(msg);
api_idnode_delete
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_idnode_delete_, "delete");
+ return api_idnode_handler(perm, args, resp, api_idnode_delete_, "delete", 1);
}
static void
api_idnode_moveup
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_idnode_moveup_, "moveup");
+ return api_idnode_handler(perm, args, resp, api_idnode_moveup_, "moveup", 0);
}
static void
api_idnode_movedown
( access_t *perm, void *opaque, const char *op, htsmsg_t *args, htsmsg_t **resp )
{
- return api_idnode_handler(perm, args, resp, api_idnode_movedown_, "movedown");
+ return api_idnode_handler(perm, args, resp, api_idnode_movedown_, "movedown", 0);
}
void api_idnode_init ( void )