e0b7c61c46
Net_server starts services by invoking fork() followed by exec(). If the latter fails (for instance because the service isn't installed), the forked child is invoking exit(). This in turn unloads libbe, triggering static cleanup code in BMessage, which deletes a couple of message ports that were inherited from the parent during the fork. After that, net_server was desparately missing those ports and no longer worked reliably. * in InitTerminateLibBe, we now register an atfork-(child-)handler, which takes care to re-initialize the static reply ports used by BMessage code * added BMessage::Private::StaticReInitForkedChild wrapper and BMessage::_StaticReInitForkedChild() implementation which overwrites the inherited port IDs with a set of own ports git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33050 a95241bf-73f2-0310-859d-f6bbb57e9c96 |
||
---|---|---|
.. | ||
AppDefs.h | ||
Application.h | ||
Clipboard.h | ||
Cursor.h | ||
Handler.h | ||
Invoker.h | ||
Looper.h | ||
Message.h | ||
MessageFilter.h | ||
MessageQueue.h | ||
MessageRunner.h | ||
Messenger.h | ||
PropertyInfo.h | ||
Roster.h |