First draft of the libosl patch series.
[paraslash.git] / aacdec_filter.c
index 956f338db741586e7ee784d2e3523a41783fbf25..1ceca1fcba2bb4648fb0f4e4c9acfa113fd464e8 100644 (file)
@@ -1,5 +1,5 @@
 /*
 /*
- * Copyright (C) 2006-2008 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2009 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -14,6 +14,7 @@
 
 #include "list.h"
 #include "sched.h"
 
 #include "list.h"
 #include "sched.h"
+#include "ggo.h"
 #include "filter.h"
 #include "error.h"
 #include "string.h"
 #include "filter.h"
 #include "error.h"
 #include "string.h"
@@ -61,7 +62,10 @@ static ssize_t aacdec(char *input_buffer, size_t len, struct filter_node *fn)
 
        if (fn->loaded > fn->bufsize * 3 / 5)
                return 0;
 
        if (fn->loaded > fn->bufsize * 3 / 5)
                return 0;
-       if (len < 2048 && !*fc->input_error)
+       ret = *fc->input_error;
+       if (ret < 0)
+               return ret;
+       if (len < 2048)
                return 0;
 
        if (!padd->initialized) {
                return 0;
 
        if (!padd->initialized) {