Package: cycle
Version: 0.3.1-1
Severity: grave
The program does not start at all:
$ cycle
Traceback (most recent call last):
File "/usr/bin/cycle", line 199, in ?
app = MyApp(0)
File
"/usr/lib/python2.3/site-packages/wx-2.6-gtk2-unicode/wx/_core.py", line
7473, in __init__
self._BootstrapApp()
File
"/usr/lib/python2.3/site-packages/wx-2.6-gtk2-unicode/wx/_core.py", line
7125, in _BootstrapApp
return _core_.PyApp__BootstrapApp(*args, **kwargs)
File "/usr/bin/cycle", line 179, in OnInit
ret=first_login()
File "/mnt/local/usr/share/cycle/dialogs.py", line 304, in first_login
users = get_users()
File "/mnt/local/usr/share/cycle/dialogs.py", line 185, in get_users
for f in files:
UnboundLocalError: local variable 'files' referenced before assignment
The problem seems to be a function that does not handle the case of an
empty variable. The attached patch which right shifts the whole file
accessing block one step seems to work. In case the file is not
accessible, the previously as empty initialized variable 'users' is
returned, so that should be safe, too. Be warned though, that I never
before edited a Python program :-)
Patch:
$ diff -u dialogs.py.orig dialogs.py
--- dialogs.py.orig 2005-10-28 01:04:58.879943811 +0200
+++ dialogs.py 2005-10-28 01:07:51.665012501 +0200
@@ -182,19 +182,19 @@
p, f_name=get_f_name()
if os.path.exists(p):
files=os.listdir(p)
- for f in files:
- fd=open(os.path.join(p, f),"rb")
- tmp=fd.read(len(magic_str))
- if tmp == magic_str:
- tmp=fd.read(100)
- n=tmp.find("===") #find end string
- if n <> -1:
- users.append((cPickle.loads(tmp[:n]), f))
- else: # old format, user_name=file_name
- users.append((f,f))
-# if not users:
-# users=[(_('empty'),"empty")]
- users.sort()
+ for f in files:
+ fd=open(os.path.join(p, f),"rb")
+ tmp=fd.read(len(magic_str))
+ if tmp == magic_str:
+ tmp=fd.read(100)
+ n=tmp.find("===") #find end string
+ if n <> -1:
+ users.append((cPickle.loads(tmp[:n]), f))
+ else: # old format, user_name=file_name
+ users.append((f,f))
+# if not users:
+# users=[(_('empty'),"empty")]
+ users.sort()
return users
#---------------------------------------------------------------------------
bye,
-christian-
-- System Information:
Debian Release: testing/unstable
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'stable')
Architecture: amd64 (x86_64)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.8-11-amd64-k8
Locale: [EMAIL PROTECTED], [EMAIL PROTECTED] (charmap=ISO-8859-15) (ignored:
LC_ALL set to [EMAIL PROTECTED])
Versions of packages cycle depends on:
ii python 2.3.5-3 An interactive high-level object-o
ii python-wxgtk2.6 2.6.1.2 wxWidgets Cross-platform C++ GUI t
cycle recommends no packages.
-- no debconf information
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]