History log of /haiku/src/kits/app/Messenger.cpp
Revision Date Author Comments
# d2e51939 08-Jul-2019 Jérôme Duval <jerome.duval@gmail.com>

Messenger: style fix.

Change-Id: I5b1b7e745de91bd1bedbbbe13faf848fdd284785
Reviewed-on: https://review.haiku-os.org/c/1565
Reviewed-by: Rene Gollent <rene@gollent.com>


# 9effbd7e 15-Dec-2018 Augustin Cavalier <waddlesplash@gmail.com>

Remove some unused cruft from the early days.

These lines were added in 2002...


# d3206115 15-Apr-2015 Axel Dörfler <axeld@pinc-software.de>

BMessenger: support launch daemon when set to signature.

* Before asking the roster, we now ask the launch roster if it knows
about the target.


# fd3c25a9 16-Jan-2015 John Scipione <jscipione@gmail.com>

Move the operator function docs over too


# 6fd09955 16-Jan-2015 John Scipione <jscipione@gmail.com>

Style fixes to Messenger, no functional change intended


# 3aeed660 07-Aug-2014 Jérôme Duval <jerome.duval@gmail.com>

include strings.h where appriopriate...

instead or additionally to string.h, in preparation for functions move.
* moves str[n]casecmp() functions and others to strings.h.
* strings.h doesn't include string.h anymore.
* this solves #10949


# 3e8daeb7 27-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add BMessenger::HashValue()


# 6de47836 31-Mar-2013 Michael Lotz <mmlr@mlotz.ch>

Add BMessenger::SetTo() to reinitialize a BMessenger.

This allows to reuse BMessenger objects for different targets, or to
recheck validity after initial creation. With that one can use the same
BMessenger after launching an application that was previously not found
valid for example.


# 1b6bc267 08-Feb-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

kits: Some spelling cleanup of common mistyped words

* Little whitespace cleanup
* No functional change


# cd511790 09-Jun-2011 Axel Dörfler <axeld@pinc-software.de>

* Minor coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42076 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 87aa57e8 09-Jun-2011 Rene Gollent <anevilyak@gmail.com>

Fix minor oversight in previous commit.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42074 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 930a139d 09-Jun-2011 Rene Gollent <anevilyak@gmail.com>

* LockTarget[WithTimeout()]: Detect potential race condition where the looper
is deleted/recreated in between retrieval and lock. Report failure if so.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42073 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6eb09230 01-Feb-2009 Michael Lotz <mmlr@mlotz.ch>

* Resolve further warnings on GCC4.
* Enable -Werror on GCC4 builds as well (limited to the same selected targets).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29118 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 69666c91 13-Jan-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Clarified documentation of the "asynchronous" SendMessage() methods.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23504 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4cad5aba 10-May-2007 Axel Dörfler <axeld@pinc-software.de>

Made IsTargetLocal() a lot faster by using BPrivate::current_team() which caches the team ID.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21104 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 94f814b3 09-May-2007 Jérôme Duval <korli@users.berlios.de>

fHandlerToken can be equal to B_PREFERRED_TOKEN


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21096 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2b2ec438 26-Mar-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved the AutoLocker class out of the kernel/utils/AutoLock.h header
into its own shared/AutoLocker.h. It can be used by userland code too.
* Removed headers/private/shared/ObjectLocker.h and replaced all uses of
BObjectLocker by AutoLocker.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20432 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9dbe170a 26-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Implemented direct message passing for local targets; this fixes a deadlock
with PostMessage() in case the message queue is full.
Some notes:
* for synchronous replies, we don't use this mechanism yet, but it could be
extended to do that as well.
* the code looks so complicated because we need a way to access the looper's
queue without locking it (to prevent deadlocks); like Dano's solution, I've
abused BTokenSpace to store a BDirectMessageTarget with a BHandler.
* we also need to decouple the lifetime of a looper's queue from its target,
as we cannot lock the looper, and therefore, can't guarantee it stays valid
as long as we're accessing it outside of BLooper.
* init_clipboard() now needs to be done after the global constructors have
been called - since sending messages now needs gDefaultTokens to be initialized.
Since this is done per image, it shouldn't cause any troubles, though.
* some minor cleanup, removed unused _msg_cache_cleanup_() and friends.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19968 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8780db59 24-May-2006 Axel Dörfler <axeld@pinc-software.de>

* Forwarding message that had someone waiting for a reply did not work correctly;
both messages wanted to reply then, which could get the wrong reply (B_NO_REPLY)
into the reply port. This fixes bug #513, took me some hours to figure that out...
* _SendMessage() no longer allows to forward a message and asking for a synchronous
reply that already has a source waiting for a reply.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17584 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bdbd1cb4 11-Mar-2006 Michael Lotz <mmlr@mlotz.ch>

Removing the USING_MESSAGE4 define.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16710 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5edcfe96 03-Jan-2006 Axel Dörfler <axeld@pinc-software.de>

Cleanup!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15806 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4ceb1e51 20-Nov-2005 Axel Dörfler <axeld@pinc-software.de>

* reverted Adi's premature changes to BWindow and restored _DetermineTarget() and
task_looper() again.
* removed BMessenger::fPreferred - whenever you had to specify "usePreferred" separately,
you don't have to do that anymore - use B_PREFERRED_TOKEN instead.
* fixed BTokenSpace::GetToken() semantics: it will no longer touch the "object" argument
in case of failure.
* Introduced a BWindow::_DistributeMessage() that will be part of the event dispatcher
counterpart to the app_server (the other will be _DetermineTarget()).
* Made it easier to use Michael's Message4 implementation: just add the following line
to your UserBuildConfig:
AppendToConfigVar DEFINES : HAIKU_TOP src : USING_MESSAGE4 : global ;
* Introduced ServerWindow::HandlerMessenger() and FocusMessenger() - the first will
target the client handler, while the other will target the preferred handler of the
client looper (usually the view having focus).
* Fixed dano message unflattening in the Message4 code.
* Changed BMessage::PrintToStream() to no longer use macros in the Message4 implementation.
* I hope that's all - it's a huge change, but it's all connected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15046 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cf10934e 13-Nov-2005 Michael Lotz <mmlr@mlotz.ch>

Introducing Message4. The changes to the related sources are ifdefed with USING_MESSAGE4 which is defined in Message4.h. To use Message4 the Message4.cpp, Message4.h, MessageUtils4.cpp, MessageUtils4.h and MessagePrivate4.h have to be linked to their counterparts without 4 suffix. Then MessageBody.cpp and MessageField.cpp have to be commented out in the app kit Jamfile and r5_message.cpp has to be added. There remain some bugs to be found. Feel free to change that.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14882 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1771f7ae 18-Jul-2005 Axel Dörfler <axeld@pinc-software.de>

Signatures are case insensitive - I hope I fixed all occurences now... (but probably not)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13731 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0d0f1600 14-Feb-2005 Jérôme Duval <korli@users.berlios.de>

fixes forwards of BMessages
iroster now works successfully


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11367 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 94b98dff 29-Jan-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Consequently use B_{NULL,PREFERRED}_TOKEN to prevent problems with BMessage code checking against B_NULL_TOKEN.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11129 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4afc60d3 25-Jan-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

* Turned the private constructor into a SetTo().
* The < operator uses BMessenger::Private now (it's no longer a friend).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11022 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 37faaade 19-Jun-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Made the (BHandler*, BLooper*,) constructor more robust. Now the looper list is locked and the looper checked for validity.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3581 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2be975a1 19-Mar-2003 ejakowatz <ejakowatz@nowhere.fake>

_get_object_token_ has found its permanent home in AppMisc.h, which the
other files were modified to include.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2957 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 717a24b7 06-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed synchronous SendMessage() calls. _send_()'s wantsReply must always be false, otherwise we get flooded with B_NO_REPLY messages.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1412 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9e9f5a1a 09-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Improved BMessenger::InitData() a bit: Now only one roster call is done, when a signature but no team ID is given.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@676 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 672c1ea9 06-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed return codes in InitData().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@623 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c9f4f5e1 04-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed InitData(): It must not be possible to construct a messenger targeting a B_ARGV_ONLY app.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@577 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7e24e06e 28-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed synchronous SendMessage() versions. They need to add be_app_messenger as reply target, if the supplied reply target is invalid.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@523 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3b044715 26-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented InitData(). BMessenger is complete.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@455 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8f1dc17d 20-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

* Assignment operator didn't return *this.
* Fixed comparisson operators: The team ID is ignored.
* Fixed second synchronous SendMessage(). The reply argument is checked for
NULL now, `if (error)' -> `if (error == B_OK)', and map B_BAD_TEAM_ID to
B_BAD_PORT_ID, which is what the R5 implementation returns.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@360 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e1f41e5d 16-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

BMessenger::Target() uses BLooperList now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@261 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 52a38012 08-Jul-2002 ejakowatz <ejakowatz@nowhere.fake>

It is accomplished ...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96


# d32061151ef0275d581d2f8d28bc99f54a0eda9b 15-Apr-2015 Axel Dörfler <axeld@pinc-software.de>

BMessenger: support launch daemon when set to signature.

* Before asking the roster, we now ask the launch roster if it knows
about the target.


# fd3c25a9283b926acfcee45c63901ea56c42362a 16-Jan-2015 John Scipione <jscipione@gmail.com>

Move the operator function docs over too


# 6fd099550fdfdfb13b887006db7312e0134c47a5 16-Jan-2015 John Scipione <jscipione@gmail.com>

Style fixes to Messenger, no functional change intended


# 3aeed6607cd07762c0e709633c012b3a632dbad9 07-Aug-2014 Jérôme Duval <jerome.duval@gmail.com>

include strings.h where appriopriate...

instead or additionally to string.h, in preparation for functions move.
* moves str[n]casecmp() functions and others to strings.h.
* strings.h doesn't include string.h anymore.
* this solves #10949


# 3e8daeb7bc9c99f4858c072638b11f8fc9c7c220 27-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add BMessenger::HashValue()


# 6de478363ee34b8d265dc2b763c031dda9e6fec8 31-Mar-2013 Michael Lotz <mmlr@mlotz.ch>

Add BMessenger::SetTo() to reinitialize a BMessenger.

This allows to reuse BMessenger objects for different targets, or to
recheck validity after initial creation. With that one can use the same
BMessenger after launching an application that was previously not found
valid for example.


# 1b6bc2675fe3691538c8764ab016593f3b06ca53 08-Feb-2012 Alexander von Gluck IV <kallisti5@unixzen.com>

kits: Some spelling cleanup of common mistyped words

* Little whitespace cleanup
* No functional change


# cd511790d7245773e881991381870596bb525903 09-Jun-2011 Axel Dörfler <axeld@pinc-software.de>

* Minor coding style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42076 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 87aa57e88e6f322d8830842209636766c5464391 09-Jun-2011 Rene Gollent <anevilyak@gmail.com>

Fix minor oversight in previous commit.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42074 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 930a139d7066258787224bb50751c953ac7b048a 09-Jun-2011 Rene Gollent <anevilyak@gmail.com>

* LockTarget[WithTimeout()]: Detect potential race condition where the looper
is deleted/recreated in between retrieval and lock. Report failure if so.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42073 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 6eb09230bae52bcdf045e1f1920b67205c29adc8 01-Feb-2009 Michael Lotz <mmlr@mlotz.ch>

* Resolve further warnings on GCC4.
* Enable -Werror on GCC4 builds as well (limited to the same selected targets).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29118 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 69666c9199e6f88d963da2cb1ecdac96d1654163 13-Jan-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

Clarified documentation of the "asynchronous" SendMessage() methods.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@23504 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4cad5aba3b15a6556a924d8cb1764e8b8abf9653 10-May-2007 Axel Dörfler <axeld@pinc-software.de>

Made IsTargetLocal() a lot faster by using BPrivate::current_team() which caches the team ID.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21104 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 94f814b32c25067e0f92be00a4ca935aa8ff2124 09-May-2007 Jérôme Duval <korli@users.berlios.de>

fHandlerToken can be equal to B_PREFERRED_TOKEN


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21096 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2b2ec4382a637811afeb5a4fa812052aef2779c6 26-Mar-2007 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved the AutoLocker class out of the kernel/utils/AutoLock.h header
into its own shared/AutoLocker.h. It can be used by userland code too.
* Removed headers/private/shared/ObjectLocker.h and replaced all uses of
BObjectLocker by AutoLocker.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20432 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9dbe170a694e59988263a752b746b6a82a5ff277 26-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Implemented direct message passing for local targets; this fixes a deadlock
with PostMessage() in case the message queue is full.
Some notes:
* for synchronous replies, we don't use this mechanism yet, but it could be
extended to do that as well.
* the code looks so complicated because we need a way to access the looper's
queue without locking it (to prevent deadlocks); like Dano's solution, I've
abused BTokenSpace to store a BDirectMessageTarget with a BHandler.
* we also need to decouple the lifetime of a looper's queue from its target,
as we cannot lock the looper, and therefore, can't guarantee it stays valid
as long as we're accessing it outside of BLooper.
* init_clipboard() now needs to be done after the global constructors have
been called - since sending messages now needs gDefaultTokens to be initialized.
Since this is done per image, it shouldn't cause any troubles, though.
* some minor cleanup, removed unused _msg_cache_cleanup_() and friends.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19968 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8780db592a950c2cc94870a7d03474568b596934 24-May-2006 Axel Dörfler <axeld@pinc-software.de>

* Forwarding message that had someone waiting for a reply did not work correctly;
both messages wanted to reply then, which could get the wrong reply (B_NO_REPLY)
into the reply port. This fixes bug #513, took me some hours to figure that out...
* _SendMessage() no longer allows to forward a message and asking for a synchronous
reply that already has a source waiting for a reply.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17584 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bdbd1cb4412cb21b5c6ddbec72bd7f151d3f09cf 11-Mar-2006 Michael Lotz <mmlr@mlotz.ch>

Removing the USING_MESSAGE4 define.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16710 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5edcfe961946df304cc90d04f304c8e2fbc5b4a6 03-Jan-2006 Axel Dörfler <axeld@pinc-software.de>

Cleanup!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15806 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4ceb1e519c0447147b1d8b54a324bb7fedd3a606 20-Nov-2005 Axel Dörfler <axeld@pinc-software.de>

* reverted Adi's premature changes to BWindow and restored _DetermineTarget() and
task_looper() again.
* removed BMessenger::fPreferred - whenever you had to specify "usePreferred" separately,
you don't have to do that anymore - use B_PREFERRED_TOKEN instead.
* fixed BTokenSpace::GetToken() semantics: it will no longer touch the "object" argument
in case of failure.
* Introduced a BWindow::_DistributeMessage() that will be part of the event dispatcher
counterpart to the app_server (the other will be _DetermineTarget()).
* Made it easier to use Michael's Message4 implementation: just add the following line
to your UserBuildConfig:
AppendToConfigVar DEFINES : HAIKU_TOP src : USING_MESSAGE4 : global ;
* Introduced ServerWindow::HandlerMessenger() and FocusMessenger() - the first will
target the client handler, while the other will target the preferred handler of the
client looper (usually the view having focus).
* Fixed dano message unflattening in the Message4 code.
* Changed BMessage::PrintToStream() to no longer use macros in the Message4 implementation.
* I hope that's all - it's a huge change, but it's all connected.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@15046 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cf10934e5fde37c267f7fb3bec89a8e9f5d9c476 13-Nov-2005 Michael Lotz <mmlr@mlotz.ch>

Introducing Message4. The changes to the related sources are ifdefed with USING_MESSAGE4 which is defined in Message4.h. To use Message4 the Message4.cpp, Message4.h, MessageUtils4.cpp, MessageUtils4.h and MessagePrivate4.h have to be linked to their counterparts without 4 suffix. Then MessageBody.cpp and MessageField.cpp have to be commented out in the app kit Jamfile and r5_message.cpp has to be added. There remain some bugs to be found. Feel free to change that.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14882 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1771f7ae7951384f1c270fde2dfbc62304a819de 18-Jul-2005 Axel Dörfler <axeld@pinc-software.de>

Signatures are case insensitive - I hope I fixed all occurences now... (but probably not)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13731 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 0d0f1600ef590af73ad66e72190ae90114e6c386 14-Feb-2005 Jérôme Duval <korli@users.berlios.de>

fixes forwards of BMessages
iroster now works successfully


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11367 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 94b98dff1aca9749901e7f00b4b484eda6b613b9 29-Jan-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

Consequently use B_{NULL,PREFERRED}_TOKEN to prevent problems with BMessage code checking against B_NULL_TOKEN.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11129 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4afc60d31b562549c8b2bc586cb6d9d8dfdda22e 25-Jan-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

* Turned the private constructor into a SetTo().
* The < operator uses BMessenger::Private now (it's no longer a friend).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11022 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 37faaaded5dd4a0cb611707bcf50ab03a0f99544 19-Jun-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Made the (BHandler*, BLooper*,) constructor more robust. Now the looper list is locked and the looper checked for validity.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3581 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2be975a1ee45252030a95af2f21b720eeae12b1e 19-Mar-2003 ejakowatz <ejakowatz@nowhere.fake>

_get_object_token_ has found its permanent home in AppMisc.h, which the
other files were modified to include.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@2957 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 717a24b7a66506a1b51c521042b4c421e8c0c990 06-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed synchronous SendMessage() calls. _send_()'s wantsReply must always be false, otherwise we get flooded with B_NO_REPLY messages.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1412 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9e9f5a1ad34c5bbefe475da7114a7dc53cb26bf3 09-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Improved BMessenger::InitData() a bit: Now only one roster call is done, when a signature but no team ID is given.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@676 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 672c1ea9ba902f5d49e8785776af5dde9b726dc0 06-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed return codes in InitData().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@623 a95241bf-73f2-0310-859d-f6bbb57e9c96


# c9f4f5e164ad99a6c389539aa90882a8095465bc 04-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed InitData(): It must not be possible to construct a messenger targeting a B_ARGV_ONLY app.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@577 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7e24e06e2cc6ae988d623ee7543ed161ab5e6ae9 28-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Fixed synchronous SendMessage() versions. They need to add be_app_messenger as reply target, if the supplied reply target is invalid.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@523 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 3b044715729e97f74e9438b342aae8626a05cf7d 26-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Implemented InitData(). BMessenger is complete.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@455 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8f1dc17d916f51649bddad1c4bdc1c8b531fbeb5 20-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

* Assignment operator didn't return *this.
* Fixed comparisson operators: The team ID is ignored.
* Fixed second synchronous SendMessage(). The reply argument is checked for
NULL now, `if (error)' -> `if (error == B_OK)', and map B_BAD_TEAM_ID to
B_BAD_PORT_ID, which is what the R5 implementation returns.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@360 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e1f41e5d5305e74fb9cc97d68f92a72513909883 16-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

BMessenger::Target() uses BLooperList now.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@261 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 52a380120846174213ccce9c4aab0dda17c72083 08-Jul-2002 ejakowatz <ejakowatz@nowhere.fake>

It is accomplished ...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10 a95241bf-73f2-0310-859d-f6bbb57e9c96