commit d980494c3c457d28ec2abc3ec6f1d63322164e4d from: Omar Polo date: Wed Feb 16 22:47:47 2022 UTC fix show command commit - 62396e0bf828997ddd485f37b5147314c32b1966 commit + d980494c3c457d28ec2abc3ec6f1d63322164e4d blob - 27bc45d9ad3145ae6bc6fcea367826db9f5bbd7f blob + d83c272f4036d3971845202b54868eb60a2c17af --- amused.c +++ amused.c @@ -444,3 +444,18 @@ main_enqueue(struct imsgev *iev, struct imsg *imsg) err: imsg_compose_event(iev, IMSG_CTL_ERR, 0, 0, -1, err, strlen(err)+1); } + +void +main_send_playlist(struct imsgev *iev) +{ + char path[PATH_MAX]; + size_t i; + + for (i = 0; i < playlist.len; ++i) { + strlcpy(path, playlist.songs[i], sizeof(path)); + imsg_compose_event(iev, IMSG_CTL_SHOW, 0, 0, -1, path, + sizeof(path)); + } + + imsg_compose_event(iev, IMSG_CTL_SHOW, 0, 0, -1, NULL, 0); +} blob - 77712b46d1856aa8ac18ce799cc122014d80b52b blob + 216322d71c078e2bce9cd98b4170485a77a6fa9c --- amused.h +++ amused.h @@ -89,6 +89,7 @@ int main_send_player(uint16_t, int, const void *, uin void main_playlist_advance(void); void main_restart_track(void); void main_enqueue(struct imsgev *, struct imsg *); +void main_send_playlist(struct imsgev *); /* ctl.c */ __dead void usage(void); blob - fe847f1b67c4856351914c7ac73f301d173219ac blob + 74413ce2af666d6de873bbc1e9f1b35f544e1c07 --- control.c +++ control.c @@ -300,6 +300,8 @@ control_dispatch_imsg(int fd, short event, void *bula) playlist_truncate(); break; case IMSG_CTL_SHOW: + main_send_playlist(&c->iev); + break; default: log_debug("%s: error handling imsg %d", __func__, imsg.hdr.type); blob - 72a0a507cfe62b913fe1369d572579e508a8ee37 blob + fb2a7fafbdbde3b83797216021b5d2f91d15293d --- ctl.c +++ ctl.c @@ -49,6 +49,7 @@ struct ctl_command ctl_commands[] = { { "restart", RESTART, ctl_noarg, "" }, { "add", ADD, ctl_add, "files...", 1 }, { "flush", FLUSH, ctl_noarg, "" }, + { "show", SHOW, ctl_noarg, "" }, { NULL }, };