Commit Briefs

Omar Polo

use a strictier pledge for `amused add'

now that we're using canonpath instead of realpath(3), we can drop the rpath pledge promise.


Omar Polo

use canonpath instead of realpath(3)

so we get the same behaviour with `add' and `load'



Omar Polo

drop a local variable

don't need to keep `files' around, res->files is enough. it would have prevented the previous bug (probably.)


Omar Polo

fix `amused add' failure introduced in previous commit

don't advance the files pointer, we need the original pointer when receiving the replies.


Omar Polo

refactor: group imsg handling

the approach with one-function-per-imsg leads to too much code splatted across the file.


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

add back missing memzero


Omar Polo

use a more readable strncmp to look for prefixes

also while here stick an `else' before the second clausole. We're supposed to trim out only '> ' and ' ', but the missing else would also trim out ' ' after a '> '!


Omar Polo

get rid of realpath during load

it has a non-ignorable cost over NFS (sdk@ reported ~30 seconds to load 64k songs, and up to 5 minutes over wifi!) and don't provide us any real gain: files can still vanish after being imported or may appear later. The only advantage of realpath was that it would clean up the path from segments like "/./" and resolve the ".." components, but that's a minor issue anyway. prodded by, discussed with and tested by sdk@, thanks a lot!


Omar Polo

drop now unused #include <sndio.h>

with the recent refactoring, sndio is only visible in player.c


Omar Polo

fix argc check

argc can be -1 if we called noarg with argc=0, because optind is 1.


Omar Polo

correctly handle arguments for sub-commands

things like "--" should be skipped etc, easier to rely on getopt(3).