diff --git a/gnupg/_trust.py b/gnupg/_trust.py
index <HASH>..<HASH> 100644
--- a/gnupg/_trust.py
+++ b/gnupg/_trust.py
@@ -60,6 +60,7 @@ def export_ownertrust(cls, trustdb=None):
     export_proc = cls._open_subprocess(['--export-ownertrust'])
     tdb = open(trustdb, 'wb')
     _util._threaded_copy_data(export_proc.stdout, tdb)
+    export_proc.wait()
 
 def import_ownertrust(cls, trustdb=None):
     """Import ownertrust from a trustdb file.
@@ -79,6 +80,7 @@ def import_ownertrust(cls, trustdb=None):
         log.error("trustdb file %s does not exist!" % trustdb)
 
     _util._threaded_copy_data(tdb, import_proc.stdin)
+    import_proc.wait()
 
 def fix_trustdb(cls, trustdb=None):
     """Attempt to repair a broken trustdb.gpg file.
@@ -106,3 +108,5 @@ def fix_trustdb(cls, trustdb=None):
     export_proc = cls._open_subprocess(['--export-ownertrust'])
     import_proc = cls._open_subprocess(['--import-ownertrust'])
     _util._threaded_copy_data(export_proc.stdout, import_proc.stdin)
+    export_proc.wait()
+    import_proc.wait()
Make trustdb processes wait to avoid teardown problems in nosetests.

 * PATCH by dlowry
 * FIXES <URL>