[Tutor] mamelauncher

Danny Yoo dyoo at hkn.eecs.berkeley.edu
Fri Sep 9 23:23:33 CEST 2005

On Fri, 9 Sep 2005, Max Russell wrote:

> I've been working on this for ages and am having real problems with
> getting the wiring for a selected game to launch when I click OK.
> I haven't added my error handling yet.

[code cut]

Hi Max,

Hmmm... Out of curiosity, what happens if you try doing it without the

Let's try to isolate the problem; it's not clear at the moment if there's
something weird with the GUI, or if there's something weird with the
os.system() call.

If you can write a quick test case that calls os.system() in the same way,
then we can be more sure what's causing the problem.

I see that you have a function called launchmame:

    def launchmame(self, event):
        selection = self.lstbx.curselection()

(Ah.  I do see a possible problem here, but I want YOU to see it too.

Try testing out the function:

def run_mame_selection(selection):

It's mostly a copy and paste of what you had in launchmame, except that we
explicitly pass in the selection string.  But try it out with a hardcoded
selection, and see if it succeeds.

As a side note, you may want to consider using the 'subprocess' module
instead of manually constructing command strings through string
concatenation: doing it by string concatenation is a bug-prone process.
'subprocess' is less bug-prone, and you can find out more here:


Good luck!

More information about the Tutor mailing list