Fix silly bug in decoder.

position was incremented by returned position instead of just being set.