summaryrefslogtreecommitdiff
path: root/plugins/vfs_curl
diff options
context:
space:
mode:
authorGravatar waker <wakeroid@gmail.com>2011-04-16 21:01:37 +0200
committerGravatar waker <wakeroid@gmail.com>2011-04-16 21:01:37 +0200
commit1416dfbf622b443c309e299e0b1efd01646c8b37 (patch)
tree4794b0edfff95bce654f253b586c9aaa4e970e7f /plugins/vfs_curl
parentd804aaaad0df4a532cfe397b5190f833837257b9 (diff)
get rid of some legacy events;
update playlist grouping on metadata changes
Diffstat (limited to 'plugins/vfs_curl')
-rw-r--r--plugins/vfs_curl/vfs_curl.c13
1 files changed, 10 insertions, 3 deletions
diff --git a/plugins/vfs_curl/vfs_curl.c b/plugins/vfs_curl/vfs_curl.c
index 528b3809..0ef5cc6a 100644
--- a/plugins/vfs_curl/vfs_curl.c
+++ b/plugins/vfs_curl/vfs_curl.c
@@ -170,7 +170,12 @@ vfs_curl_set_meta (DB_playItem_t *it, const char *meta, const char *value) {
uint32_t f = deadbeef->pl_get_item_flags (it);
f |= DDB_TAG_ICY;
deadbeef->pl_set_item_flags (it, f);
- deadbeef->plug_trigger_event_trackinfochanged (it);
+ ddb_event_track_t *ev = (ddb_event_track_t *)deadbeef->event_alloc (DB_EV_TRACKINFOCHANGED);
+ ev->track = it;
+ if (ev->track) {
+ deadbeef->pl_item_ref (ev->track);
+ }
+ deadbeef->event_send ((ddb_event_t *)ev, 0, 0);
}
int
@@ -207,7 +212,8 @@ http_parse_shoutcast_meta (HTTP_FILE *fp, const char *meta, int size) {
else {
vfs_curl_set_meta (fp->track, "title", title);
}
- deadbeef->plug_trigger_event_playlistchanged ();
+ deadbeef->plt_modified (deadbeef->plt_get_handle (deadbeef->plt_get_curr ()));
+ deadbeef->sendmessage (DB_EV_PLAYLISTCHANGED, 0, 0, 0);
}
return 0;
}
@@ -462,8 +468,9 @@ http_content_header_handler (void *ptr, size_t size, size_t nmemb, void *stream)
fp->wait_meta = fp->icy_metaint;
}
}
+ deadbeef->plt_modified (deadbeef->plt_get_handle (deadbeef->plt_get_curr ()));
if (refresh_playlist) {
- deadbeef->plug_trigger_event_playlistchanged ();
+ deadbeef->sendmessage (DB_EV_PLAYLISTCHANGED, 0, 0, 0);
}
if (!fp->icyheader) {
fp->gotsomeheader = 1;