diff options
author | Pedro Vicente <pedrovfer@gmail.com> | 2012-11-12 13:28:20 +0100 |
---|---|---|
committer | Pedro Vicente <pedrovfer@gmail.com> | 2012-11-12 13:33:09 +0100 |
commit | 1a2b404076a04953e63b8bd120d70e237c185d44 (patch) | |
tree | e589e7364b617cda868e5277c88aa0e3a6544899 /sleekxmpp | |
parent | 7a1ed64985a7cbfe48e834838d30e202f1c692e4 (diff) | |
download | slixmpp-1a2b404076a04953e63b8bd120d70e237c185d44.tar.gz slixmpp-1a2b404076a04953e63b8bd120d70e237c185d44.tar.bz2 slixmpp-1a2b404076a04953e63b8bd120d70e237c185d44.tar.xz slixmpp-1a2b404076a04953e63b8bd120d70e237c185d44.zip |
Checked if gevent thread is patched to do the right import
Diffstat (limited to 'sleekxmpp')
-rw-r--r-- | sleekxmpp/util/__init__.py | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/sleekxmpp/util/__init__.py b/sleekxmpp/util/__init__.py index 1e4af02d..957a9335 100644 --- a/sleekxmpp/util/__init__.py +++ b/sleekxmpp/util/__init__.py @@ -18,7 +18,18 @@ from sleekxmpp.util.misc_ops import bytes, unicode, hashes, hash, \ # Standardize import of Queue class: import sys -if 'gevent' in sys.modules: + +def _gevent_threads_enabled(): + if not 'gevent' in sys.modules: + return False + try: + from gevent import thread as green_thread + thread = __import__('thread') + return thread.LockType is green_thread.LockType + except ImportError: + return False + +if _gevent_threads_enabled(): import gevent.queue as queue Queue = queue.JoinableQueue else: |