# HG changeset patch # User Idan Kamara # Date 1308751984 -10800 # Node ID c19de7f32961f29ea22a07e2ac23a8772930b2ca # Parent 0c81948636f369748df584e1bba18ad31de1371e cmdserver: write the hello message as one chunk on the 'o' channel This is a guaranteed by the protocol: clients know they need to read one chunk off of the 'o' channel and treat that as the hello message. They should ignore fields they don't recognize so they stay compatible with new versions of the server in case we decide to add something. diff -r 0c81948636f3 -r c19de7f32961 mercurial/commandserver.py --- a/mercurial/commandserver.py Fri Jun 24 01:10:35 2011 +0200 +++ b/mercurial/commandserver.py Wed Jun 22 17:13:04 2011 +0300 @@ -205,8 +205,12 @@ 'getencoding' : getencoding} def serve(self): - self.cout.write('capabilities: %s' % ' '.join(self.capabilities.keys())) - self.cout.write('encoding: %s' % encoding.encoding) + hellomsg = 'capabilities: ' + ' '.join(self.capabilities.keys()) + hellomsg += '\n' + hellomsg += 'encoding: ' + encoding.encoding + + # write the hello msg in -one- chunk + self.cout.write(hellomsg) try: while self.serveone():