From: Mike C. F. <mcf...@us...> - 2005-09-17 04:56:07
|
Update of /cvsroot/pydispatcher/dispatch In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10600 Modified Files: dispatcher.py Log Message: Fix _removeReceiver to deal with case where Python shutdown has replaced sendersBack with None Index: dispatcher.py =================================================================== RCS file: /cvsroot/pydispatcher/dispatch/dispatcher.py,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** dispatcher.py 26 Nov 2004 06:37:33 -0000 1.8 --- dispatcher.py 17 Sep 2005 04:55:57 -0000 1.9 *************** *** 35,42 **** try: ! True except NameError: ! True = 1==1 ! False = 1==0 class _Parameter: --- 35,42 ---- try: ! True except NameError: ! True = 1==1 ! False = 1==0 class _Parameter: *************** *** 374,377 **** --- 374,380 ---- def _removeReceiver(receiver): """Remove receiver from connections.""" + if not sendersBack: + # During module cleanup the mapping will be replaced with None + return False backKey = id(receiver) for senderkey in sendersBack.get(backKey,()): *************** *** 425,430 **** # Senderkey will only be in senders dictionary if sender # could be weakly referenced. ! try: del senders[senderkey] ! except: pass --- 428,435 ---- # Senderkey will only be in senders dictionary if sender # could be weakly referenced. ! try: ! del senders[senderkey] ! except: ! pass |