Do not fail DVB sub decoding because of a few padding bytes
Instead of returning an error when bytes are left over, just return
the number of actually used bytes as other decoders do.
Instead add a special case so an error will be returned when none
of the data looks valid to avoid making debugging a pain.
Signed-off-by: Janne Grunau <firstname.lastname@example.org>
(cherry picked from commit 4a72765a1c94b05bd3053b1f34f8457a3b71d714)