keep already received data if not enough to decode