/** \file oggdec_filter.c Paraslash's ogg vorbis decoder. */
-#include "para.h"
+#include <regex.h>
+#include <vorbis/vorbisfile.h>
+#include "para.h"
#include "oggdec_filter.cmdline.h"
#include "list.h"
#include "sched.h"
#include "error.h"
#include "string.h"
-#include <vorbis/vorbisfile.h>
-
/** Determine byte sex. */
#ifdef WORDS_BIGENDIAN
#define ENDIAN 1
if (!pod->vf) {
int ib = 1024 * conf->initial_buffer_arg; /* initial buffer */
- if (len <ib && !*fn->fc->input_error) {
+ if (*fn->fc->input_error < 0)
+ return *fn->fc->input_error;
+ if (len < ib) {
PARA_DEBUG_LOG("initial input buffer %zd/%d, "
"waiting for more data\n", len, ib);
return 0;