Author: anevilyak Date: 2010-02-28 23:55:43 +0100 (Sun, 28 Feb 2010) New Revision: 35681 Changeset: http://dev.haiku-os.org/changeset/35681/haiku Modified: haiku/trunk/headers/private/app/LinkSender.h haiku/trunk/src/kits/app/LinkSender.cpp Log: Cache the app_server port lazily so we don't have to look it up every time. Modified: haiku/trunk/headers/private/app/LinkSender.h =================================================================== --- haiku/trunk/headers/private/app/LinkSender.h 2010-02-28 22:06:57 UTC (rev 35680) +++ haiku/trunk/headers/private/app/LinkSender.h 2010-02-28 22:55:43 UTC (rev 35681) @@ -45,6 +45,7 @@ status_t FlushCompleted(size_t newBufferSize); port_id fPort; + port_id fAppServerPort; char *fBuffer; size_t fBufferSize; Modified: haiku/trunk/src/kits/app/LinkSender.cpp =================================================================== --- haiku/trunk/src/kits/app/LinkSender.cpp 2010-02-28 22:06:57 UTC (rev 35680) +++ haiku/trunk/src/kits/app/LinkSender.cpp 2010-02-28 22:55:43 UTC (rev 35681) @@ -39,6 +39,7 @@ LinkSender::LinkSender(port_id port) : fPort(port), + fAppServerPort(-1), fBuffer(NULL), fBufferSize(0), @@ -167,9 +168,11 @@ port_id port = -1; if (be_app == NULL) port = fPort; - else - port = get_app_server_port(); - + else { + if (fAppServerPort < 0) + fAppServerPort = get_app_server_port(); + port = fAppServerPort; + } port_info info; status_t result = get_port_info(port, &info); if (result != B_OK)