baseparse: Don't forget error returns when processing more
authorJan Schmidt <jan@centricular.com>
Fri, 17 Mar 2017 11:32:19 +0000 (22:32 +1100)
committerJan Schmidt <jan@centricular.com>
Wed, 22 Mar 2017 00:42:53 +0000 (11:42 +1100)
commite571002dcbe78fe8a205c43eae3962f3b8d815ae
tree9babd37f842d250851fd7a11b61bad6d54305b45
parentb84cb752005b8cf15f079afd046b777c870dc687
baseparse: Don't forget error returns when processing more

If parsing returns a non-OK flow return in the middle
of processing an input buffer, don't overwrite that
if a later return is OK again - the subclass might
return not-linked in the middle, and then discard
subsequent data without pushing while returning OK.

A later success doesn't invalidate the earlier failure,
but we should continue processing after not-linked, so
as to keep parse state consistent.

https://bugzilla.gnome.org/show_bug.cgi?id=779831
libs/gst/base/gstbaseparse.c