|
fowlertrainer at anonym.hu
fowlertrainer at anonym.hu
Fri Jan 9 16:19:41 EST 2004
Hello !
I have get a strange problem in mod_python site.
More modules I have, and think, to I initialize my Session handler
from main module.
Like this:
-- main --
import BHASession
# Session info
BHASessionDir="C:/bhaweb/sessions"
#f=open("c:/now.txt","a");f.write(" 1");f.close();
BHASession.SSInit(BHASessionDir)
#f=open("c:/now.txt","a");f.write(" 2");f.close();
-- Session --
f=open("c:/now.txt","a");f.write(" 01");f.close();
#global SSDefaultDir
SSDefaultDir="c:/bhaweb/sessions"
f=open("c:/now.txt","a");f.write(" 02");f.close();
SSLockObj=threading.Lock()
def SSLock():
SSLockObj.acquire()
def SSUnlock():
SSLockObj.release()
def SSInit(SessionDir):
#f=open("c:/now.txt","a");f.write(" 03");f.close();
SSLock()
try:
#global SSDefaultDir
#r.append(str(SSDefaultDir))
#f=open("c:/now.txt","a")
#f.write(" "+SSDefaultDir)
#f.close()
#r.append(str(SSInitialized))
if SSDefaultDir.strip()=="":
# <-
# UnboundLocalError: local variable 'SSDefaultDir' referenced before assignment
r.append(str(SSDefaultDir))
SSDefaultDir=SessionDir
f=open("c:/now.txt","a")
f.write(" "+SSDefaultDir)
f.close()
finally:
SSUnlock()
--------------
When I not use SSInit, only I write the global variable in BHASession
module like this:
SSDefaultDir="c:/bhaweb/sessions"
then it is working good !!!
Why ? How to force python to module see his variable ?
Thanx for any advance !
--
Best regards,
fowlertrainer mailto:fowlertrainer at anonym.hu
|