There's a lot of code in here that sets `dlna_src->byte_start`. Should these be `else if`s?