History log of /haiku/headers/private/app/RegistrarDefs.h
Revision Date Author Comments
# feeb4b5d 21-Dec-2019 Jérôme Duval <jerome.duval@gmail.com>

RosterPrivate: add IsShutDownInProgress()

enable to check whether a shutdown process is in progress.

Change-Id: I8efdddb3caa80e9fd188f202b6e92a888a7608e5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2042
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 9edb207f 12-Jan-2019 Fredrik Holmqvist <fredrik.holmqvist@gmail.com>

Fix for bug 6991, replace registrars timer tick

Registrar schedules an event every second to do
fRoster-CheckSanity(). This uses 2.5% cpu on my machine
when idle. Changing it to five seconds lowers it to 0.1%

waddlesplash then pointed me to this bug which changes it
to watch for team deletion and call fRoster->CheckSanity()

As I know little in this area, it's mostly based on what
LaunchDaemon does in MessageRecieved.

Change-Id: Ie69f9399cab41d2d492d469b5d3dc88e6080c15c
Reviewed-on: https://review.haiku-os.org/c/876
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# ffbedf60 16-Jan-2019 Fredrik Holmqvist <fredrik.holmqvist@gmail.com>

Revert "Fix for bug 6991, replace registrars timer tick"

Unintentional commit, still not used to gerrit things

This reverts commit a02e4534f54232c4e85677cfe8451808f0b44209.


# a02e4534 12-Jan-2019 Fredrik Holmqvist <fredrik.holmqvist@gmail.com>

Fix for bug 6991, replace registrars timer tick

Registrar schedules an event every second to do
fRoster-CheckSanity(). This uses 2.5% cpu on my machine
when idle. Changing it to five seconds lowers it to 0.1%

waddlesplash then pointed me to this bug which changes it
to watch for team deletion and call fRoster->CheckSanity()

As I know little in this area, it's mostly based on what
LaunchDaemon does in MessageRecieved.


# 27bba9c3 17-Mar-2018 Jérôme Duval <jerome.duval@gmail.com>

registrar: flat_app_info size was arch dependent.

copy each member of app_info instead.

Change-Id: Ica8d0a195b2dbaaf57d28f2fe2f7efd73c37b2c4


# e3d73948 15-Aug-2015 Julian Harnath <julian.harnath@rwth-aachen.de>

app_server: fix test-app_server for launch_daemon changes

* Make test-app_server work again in a launch_daemon environment

* test_registrar gets a separate signature and port name again so the
host system can distinguish it from the system registrar

* AppServer is normally a BServer now, however, there can't be two
BApplications in one team. A class TestServerLoopAdapter is added,
which becomes the base class of AppServer instead of BServer when
compiling for libbe_test. It's an adapter class which looks towards
AppServer as it if was a BServer, but internally it is derived from
MessageLooper (like the old AppServer before the transition to
BServer).

This way, AppServer can stay a BServer in normal builds and it also
avoids having to use too many #ifdefs to distinguish the two
versions.


# bea38cb7 11-May-2015 Axel Dörfler <axeld@pinc-software.de>

registrar: implemented auth port via launch_daemon.

* get_roster_port_name() is no longer needed.
* This also removes the app_server restart code from the debug
server -- this will be done by the launch_daemon in the future.


# 5c9672ed 17-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Add watching support for installation location package changes

Can be requested/stopped via BPackageRoster::{Start,Stop}Watching().
The notification message has the what code B_PACKAGE_UPDATE and contains
fields "event", "location", and "change count".


# e9d9ac71 16-Sep-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add userdel


# 005a15bb 04-Jan-2012 Michael Lotz <mmlr@mlotz.ch>

Move keystore message constants and use a messenger.

* The keystore backend will (at least for the time being) reside in a
separate server. This one can be reached via normal messaging, so use
a BMessenger for sending key messages.
* Move the message constants from RegistrarDefs.h into a new
KeyStoreDefs.h that also contains the server signature.
* Update the message constants to reflect the new situation.


# 1c399649 03-Jan-2012 Michael Lotz <mmlr@mlotz.ch>

Implement all KeyStore methods except for password generation.

* Add all relevant message constants.
* Implement the messaging to send/retrieve key info.
* Implement _Flatten/_Unflatten for sending flat BKey objects.
* Remove application list from BKey, the key can't only differ by
allowed applications as the identifiers would still collide, so the
comparison isn't needed to uniquely identify the key. The applications
can be enumerated via the BKeyStore instead.


# 7691a788 25-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Minor cleanup, updated copyright.


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


# 20304940 25-Oct-2009 Rene Gollent <anevilyak@gmail.com>

Also remove _B_APP_INFO_RESERVED1_ as it's used for nothing whatsoever.



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


# 75f60c8b 24-Oct-2009 Rene Gollent <anevilyak@gmail.com>

Set default flags to B_MULTIPLE_LAUNCH only, as is the case on BeOS. This fixes issues where apps that forgot to specify flags in their resources would be unable to receive remote messages.



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


# 2c69b5b6 19-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Made the libbe_test environment basically working under Haiku - to actually
make it work, one would need to use versioning for all libbe symbols. This is
worth an 8k price per file that links against libbe.so, so I didn't want to
commit this as is. An alternative to this solution would be to write a
separate application that is responsible for the app_server's window. Comments
welcome.
* Removed BeOS compatbility of the libbe_test stuff.
* Renamed the libbe_test targets from *haiku* to *test*, ie. libbe_haiku.so is
now called libbe_test.so, haiku_registrar is now test_registrar, etc.
* This also removes BeOS compatibility from tracker/FSUtils.cpp (all BeOS
compatibility should be removed, but I don't want to make Alexandre more work
in his branch, and it's not urgent at all).
* Replaced the former "run" scripts for the test environment with a single
run script (see updated NOTES file).
* Removed the libbe_test target from some applications - this was only to help
developing them under BeOS, and is thus no longer necessary.


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


# a94ce1c9 17-Apr-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Reorganized the passwd and group support: A dedicated thread in the
registrar provides access to the DBs via a port message based
protocol. The functions in libroot just ask the registrar now.
* Added Linuxish shadow passwd support. No putspent() though -- we'll
provide private functions.


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


# 7301a7fb 13-Nov-2007 Axel Dörfler <axeld@pinc-software.de>

bonefish+axeld:
* The debug_server now sends the registrar messages whenever the debug alert
is shown, and also, if the user wants to debug the team.
* In the latter case, the registrar will now cancel a shutdown process.
* Also, it will now wait with the shutdown process until the user has
acknowledged the debugger alert.


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


# c2f641f2 18-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Turns out the whole "active app" mechanism in the registrar wasn't used at all; the
Switcher now works as expected.
* Renamed TRoster::ActivateApp() to UpdateActiveApp(), as the app is already activated
at that point (the registrar only keeps track of it).
* BWindow::DispatchMessage() now calls the new BRoster::Private::UpdateActiveApp()
method when it receives a B_WINDOW_ACTIVATED message.
* Added BRoster::_UpdateActiveApp() which calls the new B_REG_UPDATE_ACTIVE_APP.
* Removed now unused B_REG_ACTIVATE_APP.
* Minor cleanup.


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


# 6bfd06d1 31-Aug-2006 Ingo Weinhold <ingo_weinhold@gmx.de>

BRoster::Launch() eventually launches the application in question
in several steps:
1. early pre-registration with the registrar ("I wanna launch the
app, make sure noone interferes.")
2. load the app image
3. finish pre-registration with the registrar ("I have launched
the app, here is its team ID.")
4. start app main thread
5. send "on launch" messages to the app (argv, refs, others)

If the app is already running or being launched, 1. fails with a
conclusive error code and returns the team ID and the pre-registration
token of the app. Steps 2 - 4 are skipped and only the messages are
delivered using the team ID returned by 1.

This change fixes a race condition: The failed early pre-registration
request obviously cannot return the team ID, if the other thread
launching the app has not finished step 3 yet. Thus the argv/refs
message would not get delivered and Launch() would not return the
correct team ID.

Now we wait for the pre-registration to be finished in this case, using
the former _IsAppPreRegistered() mechanism, which already provided
such a waiting feature for one request. It has been extended to
accomodate an arbitrary number of waiting requests and renamed to
_IsAppRegistered().

This fixed bug #763.



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


# 925d069d 03-Jul-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added BRoster::ShutDown().
* Adjusted the shutdown command to use BRoster::ShutDown(). Removed
the alert.


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


# 0ffb21a6 17-Jan-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved everything into the BPrivate namespace.
* Replaced the constant kRosterPortName by a function returning that name
(we need different port names under BeOS and Haiku, and already at
libbe init time).
* The settings directory is obtained via find_directory() (critized by
Axel :-).


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


# b393d442 11-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added constant for the disk device rescan event.


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


# 44e20624 01-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added constants for the Disk Device API.


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


# 5ea0e0a5 09-Nov-2002 shadow303 <shadow303@nowhere.fake>

Change clipboard constants


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


# 6de29761 08-Nov-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added Load/Save Recent Lists constants


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


# 4f935768 27-Oct-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added {Get,AddTo,Clear}Recent{Apps,Documents,Folders} message constants.


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


# b010ca67 21-Oct-2002 DarkWyrm <darkwyrm@gmail.com>

Checkin for Gabe Yoder


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


# 97b89081 18-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added message constants for roster watching.


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


# 87c9902d 15-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added B_REG_BROADCAST message code.


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


# 4c063889 14-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added registrar internal message code for the roster sanity event.


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


# cd1a0ce8 12-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added message constants for the message runner support.


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


# ae56d394 07-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added B_REG_SET_SIGNATURE.


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


# a122f181 29-Sep-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Update mime update constants


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


# 1bd963b6 23-Sep-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

+ Added file-extension based mime type guessing
+ Added sniffer rule based mime type guessing
+ Added get_device_icon()
+ Added complete (synchronous, asynchronous; recursive,
non-recursive; forcing, non-forcing; you name it we got it :-)
update_mime_info() implementation.


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


# 730441c8 30-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed B_REG_MIME_UNSUPPORT_TYPE.


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


# 58e3c56d 28-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added B_REG_MIME_GET_SUPPORTING_APPS


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


# 821e6e16 25-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added B_REG_MIME_UNSUPPORT_TYPES message code.


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


# ea1a165a 23-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added B_REG_MIME_GET_INSTALLED[SUPER]_TYPES


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


# 19ac7540 20-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added B_REG_MIME_DELETE_PARAM


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


# 691354c6 19-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added B_REG_RESULT


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


# c0de18bd 16-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added a number of Mime related definitions


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


# f010066d 27-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

More sugar: Added message constants for running app querying and activation.


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


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

Added message and codes, a flat_app_info structure and the name of roster side created app looper ports.


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


# e07bab9d 23-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added message constants for the application registration.


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


# e0cc8c68 21-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

The beginning of the registrar - API classes interface.


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


# bea38cb711f29e929d62ceed9a0684e43c548a0d 11-May-2015 Axel Dörfler <axeld@pinc-software.de>

registrar: implemented auth port via launch_daemon.

* get_roster_port_name() is no longer needed.
* This also removes the app_server restart code from the debug
server -- this will be done by the launch_daemon in the future.


# 5c9672edebef5990fe9fc81fa917287448ac1ac4 17-Jun-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Add watching support for installation location package changes

Can be requested/stopped via BPackageRoster::{Start,Stop}Watching().
The notification message has the what code B_PACKAGE_UPDATE and contains
fields "event", "location", and "change count".


# e9d9ac713ffa301240e7a2e113bb0d5bb70082f8 16-Sep-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Add userdel


# 005a15bbcd7fe2f63477eea4b111711c44e171aa 04-Jan-2012 Michael Lotz <mmlr@mlotz.ch>

Move keystore message constants and use a messenger.

* The keystore backend will (at least for the time being) reside in a
separate server. This one can be reached via normal messaging, so use
a BMessenger for sending key messages.
* Move the message constants from RegistrarDefs.h into a new
KeyStoreDefs.h that also contains the server signature.
* Update the message constants to reflect the new situation.


# 1c3996496b06a2da3ae25c358336302dfbce7ddb 03-Jan-2012 Michael Lotz <mmlr@mlotz.ch>

Implement all KeyStore methods except for password generation.

* Add all relevant message constants.
* Implement the messaging to send/retrieve key info.
* Implement _Flatten/_Unflatten for sending flat BKey objects.
* Remove application list from BKey, the key can't only differ by
allowed applications as the identifiers would still collide, so the
comparison isn't needed to uniquely identify the key. The applications
can be enumerated via the BKeyStore instead.


# 7691a788d03db28156795ba9ed79312ea88fb663 25-Oct-2009 Axel Dörfler <axeld@pinc-software.de>

* Minor cleanup, updated copyright.


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


# 203049400f0940c8fdaa00aa8e6a512857d9a23e 25-Oct-2009 Rene Gollent <anevilyak@gmail.com>

Also remove _B_APP_INFO_RESERVED1_ as it's used for nothing whatsoever.



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


# 75f60c8b383d9770bb18f6aebcfd11f25473cf44 24-Oct-2009 Rene Gollent <anevilyak@gmail.com>

Set default flags to B_MULTIPLE_LAUNCH only, as is the case on BeOS. This fixes issues where apps that forgot to specify flags in their resources would be unable to receive remote messages.



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


# 2c69b5b6c0e7b481a0c43366a1942a6055cbb864 19-Aug-2009 Axel Dörfler <axeld@pinc-software.de>

* Made the libbe_test environment basically working under Haiku - to actually
make it work, one would need to use versioning for all libbe symbols. This is
worth an 8k price per file that links against libbe.so, so I didn't want to
commit this as is. An alternative to this solution would be to write a
separate application that is responsible for the app_server's window. Comments
welcome.
* Removed BeOS compatbility of the libbe_test stuff.
* Renamed the libbe_test targets from *haiku* to *test*, ie. libbe_haiku.so is
now called libbe_test.so, haiku_registrar is now test_registrar, etc.
* This also removes BeOS compatibility from tracker/FSUtils.cpp (all BeOS
compatibility should be removed, but I don't want to make Alexandre more work
in his branch, and it's not urgent at all).
* Replaced the former "run" scripts for the test environment with a single
run script (see updated NOTES file).
* Removed the libbe_test target from some applications - this was only to help
developing them under BeOS, and is thus no longer necessary.


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


# a94ce1c912808a0129c989f8d5c2e2aff4fec871 17-Apr-2008 Ingo Weinhold <ingo_weinhold@gmx.de>

* Reorganized the passwd and group support: A dedicated thread in the
registrar provides access to the DBs via a port message based
protocol. The functions in libroot just ask the registrar now.
* Added Linuxish shadow passwd support. No putspent() though -- we'll
provide private functions.


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


# 7301a7fbdbd860cf12024a0274ba9fd440ae8c5b 13-Nov-2007 Axel Dörfler <axeld@pinc-software.de>

bonefish+axeld:
* The debug_server now sends the registrar messages whenever the debug alert
is shown, and also, if the user wants to debug the team.
* In the latter case, the registrar will now cancel a shutdown process.
* Also, it will now wait with the shutdown process until the user has
acknowledged the debugger alert.


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


# c2f641f2e51127c2318b5c4201919ec14ae9fe56 18-Jan-2007 Axel Dörfler <axeld@pinc-software.de>

Turns out the whole "active app" mechanism in the registrar wasn't used at all; the
Switcher now works as expected.
* Renamed TRoster::ActivateApp() to UpdateActiveApp(), as the app is already activated
at that point (the registrar only keeps track of it).
* BWindow::DispatchMessage() now calls the new BRoster::Private::UpdateActiveApp()
method when it receives a B_WINDOW_ACTIVATED message.
* Added BRoster::_UpdateActiveApp() which calls the new B_REG_UPDATE_ACTIVE_APP.
* Removed now unused B_REG_ACTIVATE_APP.
* Minor cleanup.


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


# 6bfd06d1ff129f4db4445b978fa3ee9257f239c9 31-Aug-2006 Ingo Weinhold <ingo_weinhold@gmx.de>

BRoster::Launch() eventually launches the application in question
in several steps:
1. early pre-registration with the registrar ("I wanna launch the
app, make sure noone interferes.")
2. load the app image
3. finish pre-registration with the registrar ("I have launched
the app, here is its team ID.")
4. start app main thread
5. send "on launch" messages to the app (argv, refs, others)

If the app is already running or being launched, 1. fails with a
conclusive error code and returns the team ID and the pre-registration
token of the app. Steps 2 - 4 are skipped and only the messages are
delivered using the team ID returned by 1.

This change fixes a race condition: The failed early pre-registration
request obviously cannot return the team ID, if the other thread
launching the app has not finished step 3 yet. Thus the argv/refs
message would not get delivered and Launch() would not return the
correct team ID.

Now we wait for the pre-registration to be finished in this case, using
the former _IsAppPreRegistered() mechanism, which already provided
such a waiting feature for one request. It has been extended to
accomodate an arbitrary number of waiting requests and renamed to
_IsAppRegistered().

This fixed bug #763.



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


# 925d069d2345f9a7923cc3f1ff6e982a526dc844 03-Jul-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

* Added BRoster::ShutDown().
* Adjusted the shutdown command to use BRoster::ShutDown(). Removed
the alert.


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


# 0ffb21a672c0162564b2cf0309426e17485fbe37 17-Jan-2005 Ingo Weinhold <ingo_weinhold@gmx.de>

* Moved everything into the BPrivate namespace.
* Replaced the constant kRosterPortName by a function returning that name
(we need different port names under BeOS and Haiku, and already at
libbe init time).
* The settings directory is obtained via find_directory() (critized by
Axel :-).


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


# b393d4420b3b9e4c8fcdf4002879d8e0da5bb03c 11-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added constant for the disk device rescan event.


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


# 44e206242652ae2fefc24c361e45b147dc9867aa 01-Feb-2003 Ingo Weinhold <ingo_weinhold@gmx.de>

Added constants for the Disk Device API.


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


# 5ea0e0a5d0c881004d326e5d6f4a21fc4c7a2a26 09-Nov-2002 shadow303 <shadow303@nowhere.fake>

Change clipboard constants


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


# 6de29761ece530d4a36faf620b633afaae4b83fc 08-Nov-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added Load/Save Recent Lists constants


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


# 4f935768b755344a62c1b22285d1386f32d0d7fe 27-Oct-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added {Get,AddTo,Clear}Recent{Apps,Documents,Folders} message constants.


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


# b010ca67201c6b96d2136d4feca376bb9afe9a57 21-Oct-2002 DarkWyrm <darkwyrm@gmail.com>

Checkin for Gabe Yoder


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


# 97b8908160621e315915ae676dbbc7cdc4d29336 18-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added message constants for roster watching.


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


# 87c9902db36f69c5feec7c8f0eb8f8297f64566e 15-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added B_REG_BROADCAST message code.


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


# 4c0638893dedf18ee1ed5aba446f2c16151fba1c 14-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added registrar internal message code for the roster sanity event.


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


# cd1a0ce83268331c55c669572b2c730854034277 12-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added message constants for the message runner support.


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


# ae56d394321ebf9f9722f4f0dd4406d64056d6cb 07-Oct-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added B_REG_SET_SIGNATURE.


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


# a122f181c1d46490441b996f709558113fcf0687 29-Sep-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Update mime update constants


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


# 1bd963b6c27017324c3589c8ea29d635e1552b7f 23-Sep-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

+ Added file-extension based mime type guessing
+ Added sniffer rule based mime type guessing
+ Added get_device_icon()
+ Added complete (synchronous, asynchronous; recursive,
non-recursive; forcing, non-forcing; you name it we got it :-)
update_mime_info() implementation.


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


# 730441c8566ab9cadf7944db6838ac893a1f0b3a 30-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Removed B_REG_MIME_UNSUPPORT_TYPE.


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


# 58e3c56d45304fa812734691651c40381fa5ea21 28-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added B_REG_MIME_GET_SUPPORTING_APPS


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


# 821e6e16f2de03f4521e445fe54fe174333ace4f 25-Aug-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added B_REG_MIME_UNSUPPORT_TYPES message code.


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


# ea1a165a95f685f29c9df6c276c6f4c4e9ea1671 23-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added B_REG_MIME_GET_INSTALLED[SUPER]_TYPES


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


# 19ac75408895e2e4d328fe684a5c67bdd903c711 20-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added B_REG_MIME_DELETE_PARAM


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


# 691354c6d0792b3bee8c8cf4e85a99887312b0bc 19-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added B_REG_RESULT


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


# c0de18bddfb6383129f47145458b2b1c8e928729 16-Aug-2002 Tyler Dauwalder <tylerdauwalder@nowhere.fake>

Added a number of Mime related definitions


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


# f010066db3da1088dff6f0c5036609f13d3ebbe4 27-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

More sugar: Added message constants for running app querying and activation.


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


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

Added message and codes, a flat_app_info structure and the name of roster side created app looper ports.


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


# e07bab9da6a3ca9681fd7d4461dcdc664eeec9e2 23-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

Added message constants for the application registration.


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


# e0cc8c68a463f4f35189719d1c944ed2f8267b09 21-Jul-2002 Ingo Weinhold <ingo_weinhold@gmx.de>

The beginning of the registrar - API classes interface.


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