commit - efe0c8838579123aa8b598d840f59148175b94e1
commit + cec9ff7559292978692d09afedf72daf0aa5085d
blob - fc7f4ae38538cbc1b2da97e34fd23e949db9155b
blob + 9be3933fa1855c6fd8a26e08ea15b1171a530d11
--- player_opus.c
+++ player_opus.c
#include <opusfile.h>
#include "amused.h"
+#include "log.h"
#ifndef nitems
#define nitems(x) (sizeof(x)/sizeof(x[0]))
err(1, "fdopen");
of = op_open_callbacks(f, &cb, NULL, 0, &ret);
- if (of == NULL)
- errx(1, "failed open opus file");
+ if (of == NULL) {
+ close(fd);
+ return;
+ }
for (;;) {
if (player_shouldstop())
ret = op_read_stereo(of, pcm, nitems(pcm));
if (ret == OP_HOLE) /* corrupt file segment? */
continue;
- if (ret < 0)
- errx(1, "error decoding file (%d)", ret);
+ if (ret < 0) {
+ log_warnx("error %d decoding file", ret);
+ break;
+ }
if (ret == 0)
break; /* eof */