Forwarding did not work anymore for direct targets, since the header::flags

field was not initialized properly, and the reply target was taken from the
wrong header in this case.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22925 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2007-11-14 01:22:43 +00:00
parent 28143c31d1
commit bfccde1f6a
+3 -2
View File
@@ -1856,6 +1856,7 @@ BMessage::_SendMessage(port_id port, team_id portOwner, int32 token,
copy = new BMessage(*this);
if (copy != NULL) {
header = copy->fHeader;
header->flags = fHeader->flags;
result = B_OK;
} else {
direct->Release();
@@ -1889,8 +1890,8 @@ BMessage::_SendMessage(port_id port, team_id portOwner, int32 token,
return result;
if (!replyTo.IsValid()) {
BMessenger::Private(replyTo).SetTo(header->reply_team,
header->reply_port, header->reply_target);
BMessenger::Private(replyTo).SetTo(fHeader->reply_team,
fHeader->reply_port, fHeader->reply_target);
if (!replyTo.IsValid())
replyTo = be_app_messenger;