ejakowatz
f936fa1261
A number of bug fixes. In particular:
...
- only one byte was being used for total data length in a data field
which had 'maxi' size data (total data > 255 bytes), rather than the
correct four bytes.
- Seem to have finally nailed the proper algorithm for calculating data
item padding (four size bytes + bytes of data, padded to 8-byte
boundary) in all places.
- Was passing the address of the padding string, rather than the string
itself, when writing out NULL padding bytes
- Was incorrectly clearing the MSG_FLAG_MINI_DATA bit when the number of
data items or the size of the largest data item exceeding 256 bytes.
Bit is now cleared when total size of all item data (including size
bytes and padding, if applicable) exceeds 256 bytes
- Modified SizePolicy::Padding(const T&) to use calc_padding() from
MessageUtils.h/.cpp
- Added SizePolicy::Padding(const Store&) to calculate padding for data
field's entire data store
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-02 21:35:28 +00:00
DarkWyrm
67e2a74dc6
Separated functionality of PortLink into LinkMsg* to avoid some *serious* code duplication
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9334 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-14 01:18:38 +00:00
DarkWyrm
a3bd1e1ca5
Added class for requesting shared client-server memory
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9270 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-09 18:13:33 +00:00
DarkWyrm
601a55f349
Added message codes to support the soon-coming ServerMemIO class
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-10-05 22:59:03 +00:00
ejakowatz
974d454507
Fixed bug. BMessageBody's assignment operator was making a generic copy of the map which maintains the data -- meaning only pointers to contained BMessageFields were being copied. Added Clone() operation to BMessageField and Copy() to BMessageFieldStoragePolicy, along with a specialization of BMessageFieldStoragePolicy for BDataBuffer; a straight copy of the vector is sufficient for all other data types. This fixes issues with BMessage unittests where BMessage, entry_ref, BFlattenable, and raw data are exercises.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-07 23:25:09 +00:00
ejakowatz
02043d35db
Added calc_padding() convenience function for calculating how much padding to add to a buffer in order for it to fall on a specified byte boundary.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-07 23:06:32 +00:00
ejakowatz
72a804515c
Fixed a couple of memory leaks and an incorrect index bounds check.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8635 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-24 23:54:02 +00:00
ejakowatz
a7529effe6
Fixed potential memory leak. If user tried to add data of type X when we already had data of type Y with the same name, a new BMessageField of type Y would be created and added to the field map, leaving the old type X field orphaned.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8613 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-20 18:14:05 +00:00
DarkWyrm
d0021b64bc
Major API improvements by Pahtz
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8518 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-30 15:10:19 +00:00
Adi Oanca
19185de325
added AS_CLIENT_DEAD
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8059 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-19 10:13:08 +00:00
DarkWyrm
c73fb70eb7
Minor header tweaks relating to the message buffer size
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-11 13:36:48 +00:00
DarkWyrm
0223e22e5a
Janitorial work, mostly.
...
Removed SetMsgCode()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-11 12:55:42 +00:00
Adi Oanca
aed7bd673a
added a method to be abele to post messages to a BSession handler
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6041 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-12 23:58:04 +00:00
Adi Oanca
46c1d3fef3
modified some methods to return 'void'
...
rendered BSession operationable, again...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6039 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-12 23:57:14 +00:00
DarkWyrm
018e96bd74
Fix for a data attachment bug
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5356 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-14 00:21:43 +00:00
DarkWyrm
fb7da50d34
Updates to sync with (hopefully) last messaging protocol tweaks
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-13 23:33:20 +00:00
Axel Dörfler
def04c5be3
Added missing newline.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5002 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-13 01:57:54 +00:00
DarkWyrm
836656bf86
API tweaks
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-10 02:33:38 +00:00
DarkWyrm
fe556d69c6
Added message code for getting UI colors as a ColorSet
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4974 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-07 23:48:14 +00:00
DarkWyrm
7507620c3a
Tweaked all messaging classes to comply with new message protocol policies
...
AppServerLink no longer inherits from BSession
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-04 19:06:34 +00:00
DarkWyrm
9e6ef5ce51
Added PortMessage::ReadString and PortLink::AttachString to support BSession-style string-attachments
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-04 00:52:24 +00:00
DarkWyrm
e956d70682
Eliminated a memory-allocation bug
...
Added a sensible workaround for BSession message code packaging
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4936 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-03 23:28:05 +00:00
DarkWyrm
7b6beb9bde
BSession is no longer a parent class
...
Removal of deprecated reply functions
Global protocol change - reply port is at the end of data, not the beginning
PortLink still uses the BSession messaging style
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-03 22:20:28 +00:00
DarkWyrm
5e69d02601
Moved BSession messaging code to ServerProtocol.h
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-03 00:02:19 +00:00
DarkWyrm
dba1a55db7
Added methods to get the sender and receiver ports
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-02 23:07:26 +00:00
DarkWyrm
594cf26a76
Conversion over to BSession API
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-02 01:01:45 +00:00
Adi Oanca
88ad98dca8
added support for UInts and a new function: DropInputBuffer() used for basic synchronization
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4799 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 12:11:37 +00:00
Adi Oanca
cb51da76c9
added an new message
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4798 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-25 12:10:41 +00:00
DarkWyrm
46d99be13c
Added message codes for creating and deleting BCursors
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4734 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 18:34:53 +00:00
DarkWyrm
84d8b7c760
Added option to set cursor to the applicaiton's cursor
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4733 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 17:53:08 +00:00
DarkWyrm
f02718d110
Added message code for supporting the R5 decor easter egg
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-17 12:57:10 +00:00
Adi Oanca
f90fc6a679
PortLink now uses a fixed buffer. Its base class is.... BSession...
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4424 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 17:21:49 +00:00
Adi Oanca
3bbe920498
Added some new messages that are needed by BView
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4423 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 17:20:51 +00:00
Adi Oanca
445114208c
Header file for the new communication class: BSession - it will replace PortLink
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4422 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 17:20:07 +00:00
ejakowatz
0784fd8bde
Fixed bugs in (un)flattening code.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4403 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-29 22:32:22 +00:00
Ingo Weinhold
66abd4d0a6
Fixed a few warnings.
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4381 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-26 21:36:38 +00:00
ejakowatz
19cdc4570f
How the glaring fubar in MessagePrivate.h got past me is a mystery.
...
Nonetheless, here is new BMessenger-related goodness to smooth is all out.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4374 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-25 23:33:02 +00:00
ejakowatz
e9e500cb9e
Minor tweak to BHandler::UnlockLooper()
...
Added calls to _init_message_(), _delete_message_(), and
_msg_cache_cleanup() to InitTerminateLibBe.cpp
Finished first implementation of BMessage::SendReply(), BMessage::_send_(),
and BMessage::_send_message()
Add BMessage to app.src, removed BBlockCache from support.src.
New BMessage::Private class has functions for twiddling BMessage internals
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4371 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-25 07:55:52 +00:00
shadow303
17e6de7a37
gcc 3 fixes
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4227 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-04 00:46:53 +00:00
DarkWyrm
5407fa5f84
Forgotten files. Oops. :P
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4072 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-25 15:30:18 +00:00
DarkWyrm
a72997e0d4
Changes to support system cursors
...
Moved cursor_which defs to a separate file
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3967 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-14 14:37:10 +00:00
shadow303
5c54c7191a
Fix templates for PortLink & PortMessage
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3960 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-11 23:16:15 +00:00
shadow303
d1acc68a9d
Templatize PortLink & PortMessage
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3950 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-11 01:49:58 +00:00
DarkWyrm
48326bef06
Added message codes for BWindow hook functions
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3948 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-10 20:20:35 +00:00
DarkWyrm
e76917c658
Added Read(int64*)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-10 20:13:23 +00:00
DarkWyrm
2a4311aea6
Added Read(bool*)
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3935 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-10 17:41:44 +00:00
DarkWyrm
61480f2184
Simplified interface
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-10 16:51:51 +00:00
shadow303
c6decab16c
Adjust message sizes for added view token
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3844 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 21:05:36 +00:00
shadow303
c6b1218b47
Make ReplyData public
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3843 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-04 21:04:37 +00:00
DarkWyrm
6b76dd01f5
Can get replies as PortMessages now
...
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3627 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-23 13:18:39 +00:00