mirror of
https://github.com/cloudwu/skynet.git
synced 2026-07-24 20:23:06 +00:00
fixnetpack
不一定两次读完。没有读完的时候把uc放回queue。
This commit is contained in:
@@ -228,6 +228,10 @@ filter_data_(lua_State *L, int fd, uint8_t * buffer, int size) {
|
|||||||
int need = uc->pack.size - uc->read;
|
int need = uc->pack.size - uc->read;
|
||||||
if (size < need) {
|
if (size < need) {
|
||||||
memcpy(uc->pack.buffer + uc->read, buffer, size);
|
memcpy(uc->pack.buffer + uc->read, buffer, size);
|
||||||
|
uc->read += size;
|
||||||
|
int h = hash_fd(fd);
|
||||||
|
uc->next = q->hash[h];
|
||||||
|
q->hash[h] = uc;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
memcpy(uc->pack.buffer + uc->read, buffer, need);
|
memcpy(uc->pack.buffer + uc->read, buffer, need);
|
||||||
|
|||||||
Reference in New Issue
Block a user