The current code may miss to transform the remaining buffer if the
receiver has already deactivated its task. Check for the number of
loaded bytes in the input buffer of the filter chain and return eof
only if nothing is loaded.
t->ret = -E_FC_EOF;
if (fc->output_eof && *fc->output_eof)
goto err_out;
- if (fc->input_eof && *fc->input_eof)
+ if (fc->input_eof && *fc->input_eof && !*fc->in_loaded)
goto err_out;
again:
ib = fc->inbuf;