Commit Briefs

Omar Polo

CHANGES for 0.7 (tags/0.7)


Omar Polo

tweak -d description


Omar Polo

typo


Omar Polo

consume all enqueued messages before calling imsg_read

player_dispatch reads only one imsg from the ibuf. Next time it's called, the other messages on the ibuf (if any) are discarded and new ones are read. This can cause the player process to go out-of-sync with the main process if multiple messages were "bundled" in the same chunk. To avoid this, always try to imsg_read before. If it succeedes, we read process the equeued messages one by one, if it fails then we poll for new data and call imsg_read to process them and retry. This fixes a bug where amused could be "confused" by running $ amused pause ; amused stop ; amused play in a loop a few times. This bug and the repro were reported two months ago by Dirk-Wilhelm Peters, thanks! (and sorry it took so long to understand and fix the issue)


Omar Polo

don't set the imsg fd as blocking mode

just do a poll before imsg_read in player_disptach to wait for data to read. It's not performance-critical code, so this is fine. If it were important not to do an extra poll(2), for example when we're called is called after player_pendingimsg we already know there's something to read, we could move the polling in the case `n == 0' below.


Omar Polo

amused monitor: allow to pass a list of event as filter

it's easier / simpler for scripts to do $ amused monitor next,prev,jump rather than $ amused monitor | egrep --line-buffered 'next|prev|jump'


Omar Polo

use normal width for listing


Omar Polo

bump version number


Omar Polo

CHANGES for 0.6 (tags/0.6)


Omar Polo

fix version


Omar Polo

manpage tweaks



Omar Polo

don't send the song' path to the player process

we're not relying anymore on the file extension, so this information is useless for the player.


Omar Polo

we have no bugs :)


Omar Polo

don't call player_sendeof on IMSG_STOP

the refactoring introduced this error where we call report an EOF upon IMSG_STOP, making the player infinitely loop.