Rewrite and activate message passing by area. Passing by area works now with
the new sematic of transfer_area so a message area is transfered into the right teams' address space and it does not need to be cloned there anymore. Passing by area is only used for messages bigger than a certain size (currently hardcoded to 40KB) which should be somehow bound to the max port message size. This makes passing large messages (i.e. > the port limit) possible, so for example copy&paste of long text, image data, etc. should now work. Got rid of the fClonedArea member as it is not necessary with the new design, renamed shared_area to message_area in the private message_header, avoid an unnecessary allocation of the header for the copy constructors, check allocations in a few more places and some minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@24321 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -68,7 +68,7 @@ struct BMessage::message_header {
|
||||
|
||||
int32 target;
|
||||
int32 current_specifier;
|
||||
area_id shared_area;
|
||||
area_id message_area;
|
||||
|
||||
// reply info
|
||||
port_id reply_port;
|
||||
|
||||
Reference in New Issue
Block a user