#Patch sent to upstream on March 1st, 2009 #Jesus Rivero (Neurogeek) #Replaced deprecated os.popen3 for subprocess diff -uNr xdg.orig/Menu.py xdg/Menu.py --- xdg.orig/Menu.py 2009-03-01 04:34:38.000000000 -0430 +++ xdg/Menu.py 2009-03-01 04:41:27.000000000 -0430 @@ -12,6 +12,7 @@ import xdg.Locale import xdg.Config +from subprocess import Popen, PIPE ELEMENT_NODE = xml.dom.Node.ELEMENT_NODE @@ -841,13 +842,16 @@ return m def __parseKDELegacyDirs(filename, parent): - f=os.popen3("kde-config --path apps") - output = f[1].readlines() try: - for dir in output[0].split(":"): - __parseLegacyDir(dir,"kde", filename, parent) - except IndexError: - pass + f=Popen("kde-config --path apps", shell=True, stdout=PIPE).stdout + output = f.readlines() + try: + for dir in output[0].split(":"): + __parseLegacyDir(dir,"kde", filename, parent) + except IndexError: + pass + except: + raise Exception, "kde-config failed" # remove duplicate entries from a list def __removeDuplicates(list):