[Cmake-commits] CMake branch, next, updated. v3.6.2-2681-g74665a9

Brad King brad.king at kitware.com
Sat Oct 1 08:25:06 EDT 2016


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  74665a9d1de70d2f7f0888a84472cd0e36402b7e (commit)
       via  1b43f9d12dc3d605056fcb8af442b8f0d07ff901 (commit)
      from  f175f4656bcc2cbcd7637d2adc4832936e384344 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=74665a9d1de70d2f7f0888a84472cd0e36402b7e
commit 74665a9d1de70d2f7f0888a84472cd0e36402b7e
Merge: f175f46 1b43f9d
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Sat Oct 1 08:25:06 2016 -0400
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Sat Oct 1 08:25:06 2016 -0400

    Merge topic 'cmake-server-teardown-file-monitor' into next
    
    1b43f9d1 cmake-server: Stop the file monitor on client disconnect


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=1b43f9d12dc3d605056fcb8af442b8f0d07ff901
commit 1b43f9d12dc3d605056fcb8af442b8f0d07ff901
Author:     Brad King <brad.king at kitware.com>
AuthorDate: Fri Sep 30 15:01:29 2016 -0400
Commit:     Brad King <brad.king at kitware.com>
CommitDate: Fri Sep 30 15:05:42 2016 -0400

    cmake-server: Stop the file monitor on client disconnect
    
    When the client disconnects we need to remove all events from our loop.
    Prior to the introduction of the file monitor we only needed to remove
    the client pipes.  Now we need to remove the file monitor events too.
    
    Without this the event loop may continue to block on file monitor
    events.  If one does eventually come in then the event handler may try
    to report it to the disconnected client and crash because our internal
    structures for writing to the client have been freed.
    
    This addresses a failure of the `Server` test on some machines.

diff --git a/Source/cmServerConnection.cxx b/Source/cmServerConnection.cxx
index c62ca3c..c9822d3 100644
--- a/Source/cmServerConnection.cxx
+++ b/Source/cmServerConnection.cxx
@@ -164,6 +164,7 @@ void cmServerConnection::ReadData(const std::string& data)
 
 void cmServerConnection::HandleEof()
 {
+  this->FileMonitor()->StopMonitoring();
   this->TearDown();
 }
 

-----------------------------------------------------------------------

Summary of changes:
 Source/cmServerConnection.cxx |    1 +
 1 file changed, 1 insertion(+)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list