[haiku-commits] r35681 - in haiku/trunk: headers/private/app src/kits/app

  • From: anevilyak@xxxxxxxxx
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Sun, 28 Feb 2010 23:55:44 +0100 (CET)

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)


Other related posts:

  • » [haiku-commits] r35681 - in haiku/trunk: headers/private/app src/kits/app - anevilyak