parent
97fc159ff1
commit
2f120d9cd2
|
@ -167,6 +167,7 @@ int tip_client_state_process_payload(struct tip_client *cli)
|
|||
int tip_client_state_process_payload_reply(struct tip_client *cli)
|
||||
{
|
||||
uint64_t chunk_size;
|
||||
uint32_t remainder;
|
||||
off_t chunk_offset;
|
||||
char buf[1024];
|
||||
int fd;
|
||||
|
@ -191,18 +192,13 @@ int tip_client_state_process_payload_reply(struct tip_client *cli)
|
|||
break;
|
||||
|
||||
chunk_size = cli->size / MAX_CHUNKS;
|
||||
if (cli->size % MAX_CHUNKS) {
|
||||
if (cli->chunk < MAX_CHUNKS - 1) {
|
||||
chunk_size++;
|
||||
chunk_offset = chunk_size * cli->chunk;
|
||||
} else {
|
||||
chunk_offset = chunk_size * cli->chunk;
|
||||
chunk_offset += MAX_CHUNKS - 1;
|
||||
chunk_size--;
|
||||
}
|
||||
} else {
|
||||
chunk_offset = chunk_size * cli->chunk;
|
||||
|
||||
if (cli->chunk == MAX_CHUNKS - 1) {
|
||||
remainder = cli->size % MAX_CHUNKS;
|
||||
chunk_size += remainder;
|
||||
}
|
||||
|
||||
cli->size = chunk_size;
|
||||
cli->offset = chunk_offset;
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue