mirror of
https://github.com/cloudwu/skynet.git
synced 2026-07-24 12:20:41 +00:00
bugfix: remove DONTCOPY tag from type
This commit is contained in:
@@ -313,10 +313,10 @@ forward_local_messsage(struct harbor *h, void *msg, int sz) {
|
|||||||
message_to_header((const uint32_t *)cookie, &header);
|
message_to_header((const uint32_t *)cookie, &header);
|
||||||
|
|
||||||
uint32_t destination = header.destination;
|
uint32_t destination = header.destination;
|
||||||
int type = (destination >> HANDLE_REMOTE_SHIFT) | PTYPE_TAG_DONTCOPY;
|
int type = destination >> HANDLE_REMOTE_SHIFT;
|
||||||
destination = (destination & HANDLE_MASK) | ((uint32_t)h->id << HANDLE_REMOTE_SHIFT);
|
destination = (destination & HANDLE_MASK) | ((uint32_t)h->id << HANDLE_REMOTE_SHIFT);
|
||||||
|
|
||||||
if (skynet_send(h->ctx, header.source, destination, type, (int)header.session, (void *)msg, sz-HEADER_COOKIE_LENGTH) < 0) {
|
if (skynet_send(h->ctx, header.source, destination, type | PTYPE_TAG_DONTCOPY , (int)header.session, (void *)msg, sz-HEADER_COOKIE_LENGTH) < 0) {
|
||||||
if (type != PTYPE_ERROR) {
|
if (type != PTYPE_ERROR) {
|
||||||
// don't need report error when type is error
|
// don't need report error when type is error
|
||||||
skynet_send(h->ctx, destination, header.source , PTYPE_ERROR, (int)header.session, NULL, 0);
|
skynet_send(h->ctx, destination, header.source , PTYPE_ERROR, (int)header.session, NULL, 0);
|
||||||
|
|||||||
Reference in New Issue
Block a user