int ret = aft_get_row_of_path(path, &aft_row);
if (ret < 0) {
- PARA_NOTICE_LOG("%s: %s\n", path, PARA_STRERROR(-ret));
+ PARA_NOTICE_LOG("%s: %s\n", path, para_strerror(-ret));
return 1;
}
ret = score_add(aft_row, -playlist->length);
if (ret < 0) {
- PARA_ERROR_LOG("failed to add %s: %s\n", path, PARA_STRERROR(-ret));
+ PARA_ERROR_LOG("failed to add %s: %s\n", path, para_strerror(-ret));
return ret;
}
playlist->length++;
err:
if (ret != -E_DUMMY_ROW)
PARA_NOTICE_LOG("unable to load playlist (%s)\n",
- PARA_STRERROR(-ret));
+ para_strerror(-ret));
return 1;
}
int ret = aft_get_row_of_path(path, &aft_row);
if (ret < 0)
- para_printf(pb, "%s: %s\n", path, PARA_STRERROR(-ret));
+ para_printf(pb, "%s: %s\n", path, para_strerror(-ret));
return 1;
}
if (ret < 0) {
para_printf(pb, "failed to get playlist data: %s\n",
- PARA_STRERROR(-ret));
+ para_strerror(-ret));
return 1;
}
if (*playlist_name) { /* skip dummy row */
return score_add(row, 0); /* play it immediately */
}
+/**
+ * Handle afs events relevant to playlists.
+ *
+ * \param event The event type.
+ * \param pb Unused.
+ * \param data Depends on the event type.
+ *
+ * \return Standard.
+ */
int playlists_event_handler(enum afs_events event,
__a_unused struct para_buffer *pb, void *data)
{
int ret;
+ struct afsi_change_event_data *aced = data;
switch(event) {
+ case AFSI_CHANGE:
+ return playlist_update_audio_file(aced->aft_row);
case AUDIO_FILE_RENAME:
case AUDIO_FILE_ADD:
return handle_audio_file_event(event, data);