aboutsummaryrefslogtreecommitdiffstats
path: root/src/engine-uiserver.c
diff options
context:
space:
mode:
authorWerner Koch <[email protected]>2013-04-25 11:00:16 +0000
committerWerner Koch <[email protected]>2013-05-11 13:38:08 +0000
commit9e7df9aa6d81f0abbabb03a2346d80eb5d375f81 (patch)
treec795a288f6612141b118cbb966546750d79505e5 /src/engine-uiserver.c
parentFix hang in socket closing. (diff)
downloadgpgme-9e7df9aa6d81f0abbabb03a2346d80eb5d375f81.tar.gz
gpgme-9e7df9aa6d81f0abbabb03a2346d80eb5d375f81.zip
w32: Change the way the I/O threads are cleaned up.
* src/w32-io.c (reader_context_s, create_reader) (writer_context_s, create_writer): Rename STOPPED to CLOSE_EV. (reader, writer): Remove setting of STOPPED. Wait for CLOSE_EV and then release the context. (destroy_reader, destroy_writer): Do not wait but set the CLOSE_EV. (kill_reader, kill_writer): Remove. (_gpgme_io_close): Add code from kill_reader and kill_writer. -- The old code was prone to deadlocks which were actually exhibited at Kleopatra startup. The new code is much more straightforward and easier to understand. The reason for the complex old code was probably due to our former idea to allow re-use of the I/O threads. However we have long given up on this.
Diffstat (limited to 'src/engine-uiserver.c')
0 files changed, 0 insertions, 0 deletions