Commit Briefs
use (a modified version of) kristaps' oconfigure
see GitHub issue #1
add missing initializers
meh, just to please the compiler. Global variables are guaranteed to be zeroed so not specifying a value shouldn't matter, yet it complains.
don't loop indefinitely in ctl_connect
if the server fails to start for wathever reason, we end up looping in ctl_connect indefinitely as we try to spawn the deamon (that dies) and try to connect to it. Add an arbitrary maximum number of retries before giving up. Reported by sikmir in the GitHub issue #1, thanks!
reset path buffer before writing to it
otherwise path, which is filled by the garbage that's on the stack, may not end with a NUL byte. main_enqueue fails with "malformed data" if the path sent doesn't end with a NUL. (i.e. the fact that in every case the path is NUL-terminated is not relevant. For semplicity, I'm working with paths long PATH_MAX bytes and only checking that path[PATH_MAX-1] is NUL when handling the imsgs.) Issue reported by Dirk-Wilhelm Peters, thanks!
use a strictier pledge for `amused add'
now that we're using canonpath instead of realpath(3), we can drop the rpath pledge promise.
use canonpath instead of realpath(3)
so we get the same behaviour with `add' and `load'
drop a local variable
don't need to keep `files' around, res->files is enough. it would have prevented the previous bug (probably.)