Author: wlux
Date: Sun Nov  2 23:11:55 2014
New Revision: 38151

URL: http://svn.gna.org/viewcvs/gnustep?rev=38151&view=rev
Log:
Force use of a socket port name server to look up servers on other hosts.

Modified:
    libs/steptalk/trunk/ChangeLog
    libs/steptalk/trunk/Frameworks/StepTalk/STRemoteConversation.m

Modified: libs/steptalk/trunk/ChangeLog
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/steptalk/trunk/ChangeLog?rev=38151&r1=38150&r2=38151&view=diff
==============================================================================
--- libs/steptalk/trunk/ChangeLog       (original)
+++ libs/steptalk/trunk/ChangeLog       Sun Nov  2 23:11:55 2014
@@ -1,6 +1,11 @@
 2014-11-02  Wolfgang Lux  <[email protected]>
 
-       * Frameworks/StepTalk/STRemoteConversation.m (connectionDidDie:):
+       * Frameworks/StepTalk/STRemoteConversation.m (-open): Force use of
+       a socket port name server to look up servers on other hosts.
+
+2014-11-02  Wolfgang Lux  <[email protected]>
+
+       * Frameworks/StepTalk/STRemoteConversation.m (-connectionDidDie:):
        Fix leak of the proxy and environmentProcess attributes when a
        connection died.
 

Modified: libs/steptalk/trunk/Frameworks/StepTalk/STRemoteConversation.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/steptalk/trunk/Frameworks/StepTalk/STRemoteConversation.m?rev=38151&r1=38150&r2=38151&view=diff
==============================================================================
--- libs/steptalk/trunk/Frameworks/StepTalk/STRemoteConversation.m      
(original)
+++ libs/steptalk/trunk/Frameworks/StepTalk/STRemoteConversation.m      Sun Nov 
 2 23:11:55 2014
@@ -6,6 +6,7 @@
 #import <Foundation/NSNotification.h>
 #import <Foundation/NSConnection.h>
 #import <Foundation/NSDistantObject.h>
+#import <Foundation/NSPortNameServer.h>
 
 #import "STEnvironment.h"
 
@@ -34,23 +35,29 @@
 - (void)open
 {
     NSString *envProcName;
-    
-    if(connection)
+    NSPortNameServer *nameServer;
+
+    if (connection)
     {
         [NSException raise:@"STConversationException"
                      format:@"Unable to open conversation: already opened."];
         return;
     }
-        
-    envProcName = [NSString stringWithFormat:@"STEnvironment:%@", 
+
+    envProcName = [NSString stringWithFormat:@"STEnvironment:%@",
                                                 environmentName];
 
-    connection = [NSConnection connectionWithRegisteredName:envProcName 
-                                                       host:hostName];
+    if ([hostName length] > 0)
+        nameServer = [NSSocketPortNameServer sharedInstance];
+    else
+        nameServer = [NSPortNameServer systemDefaultPortNameServer];
+    connection = [NSConnection connectionWithRegisteredName:envProcName
+                                                       host:hostName
+                                            usingNameServer:nameServer];
 
     RETAIN(connection);
 
-    if(!connection)
+    if (!connection)
     {
         [NSException raise:@"STConversationException"
                      format:@"Connection failed for environment '%@'",
@@ -61,11 +68,11 @@
     environmentProcess = RETAIN([connection rootProxy]);
     proxy = RETAIN([environmentProcess createConversation]);
     [proxy setProtocolForProxy:@protocol(STConversation)];
-    
+
     [[NSNotificationCenter defaultCenter]
                  addObserver: self
                     selector: @selector(connectionDidDie:)
-                        name: NSConnectionDidDieNotification 
+                        name: NSConnectionDidDieNotification
                       object: connection];
 }
 - (void)close


_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to