-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
tags 343939 + patch
thanks
Hi,
here is a patch that searches the menu command in a default $PATH if it
is not an absolute path.
Regards,
Bastian
- --
,''`. Bastian Kleineidam
: :' : GnuPG Schlüssel
`. `' gpg --keyserver wwwkeys.pgp.net --recv-keys 32EC6F3E
`-
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFDzUuIeBwlBDLsbz4RAo9TAKC4rgeUqBxvqZH998oEIldWD9f/wgCeM0if
7DVXyaZKF8QWXUGicwIipGY=
=JoVX
-----END PGP SIGNATURE-----
--- menu.py.orig 2006-01-17 20:35:48.086363256 +0100
+++ menu.py 2006-01-17 20:49:28.498209528 +0100
@@ -22,10 +22,12 @@
self.menu_files[file] = \
MenuParser(os.path.join(self.information['dir'], \
'unpacked', file[1:]))
+
def check_paths(self):
if filter(lambda x: x.startswith('/usr/lib/menu'), \
self.menu_files.keys()):
self.signal_error('menu-files-in-usr-lib-menu')
+
def check_commands(self):
commands = []
for menu in self.menu_files.keys():
@@ -36,9 +38,22 @@
real_cmd = unquoted.split(' ')[0]
if real_cmd.find('sh') != -1:
continue
- if not os.path.exists(os.path.join(self.information['dir'], \
- 'unpacked', real_cmd[1:])):
+ if os.path.isabs(real_cmd):
+ found = self.check_command(real_cmd[1:])
+ else:
+ found = False
+ for path in ['usr/local/bin/', 'usr/bin/', 'bin/',
+ 'usr/bin/X11/', 'usr/games/']:
+ if self.check_command(path + real_cmd):
+ found = True
+ break
+ if not found:
self.signal_error('command-not-exist', [unquoted])
+
+ def check_command (self, cmd):
+ return os.path.exists(os.path.join(self.information['dir'],
+ 'unpacked', cmd))
+
def check_section(self):
sections = {'Apps': ('Databases', 'Editors', 'Education', \
'Emulators', 'Graphics', 'Hamradio', 'Math', 'Net', \
@@ -62,6 +77,7 @@
[tmp_sect[1]])
else:
self.signal_error('unknown-menu-section', [tmp_sect[0]])
+
def check_quoting(self):
for menu in self.menu_files.keys():
for stanza in self.menu_files[menu].menu_file: