diff -Nru gedit-debugger-0.1~bzr112~quantal1/debian/bzr-builder.manifest gedit-debugger-0.1~bzr113~quantal1/debian/bzr-builder.manifest --- gedit-debugger-0.1~bzr112~quantal1/debian/bzr-builder.manifest 2013-01-31 14:02:03.000000000 +0000 +++ gedit-debugger-0.1~bzr113~quantal1/debian/bzr-builder.manifest 2013-03-03 16:41:59.000000000 +0000 @@ -1,2 +1,2 @@ -# bzr-builder format 0.3 deb-version {debupstream}~bzr112 -lp:gedit-debugger revid:barcc@gmx.de-20130130225010-75skazkebp9bahze +# bzr-builder format 0.3 deb-version {debupstream}~bzr113 +lp:gedit-debugger revid:barcc@gmx.de-20130303150541-6ch6x9xxdqebm8lo diff -Nru gedit-debugger-0.1~bzr112~quantal1/debian/changelog gedit-debugger-0.1~bzr113~quantal1/debian/changelog --- gedit-debugger-0.1~bzr112~quantal1/debian/changelog 2013-01-31 14:02:03.000000000 +0000 +++ gedit-debugger-0.1~bzr113~quantal1/debian/changelog 2013-03-03 16:41:59.000000000 +0000 @@ -1,8 +1,8 @@ -gedit-debugger (0.1~bzr112~quantal1) quantal; urgency=low +gedit-debugger (0.1~bzr113~quantal1) quantal; urgency=low * Auto build. - -- Launchpad Package Builder Thu, 31 Jan 2013 14:02:03 +0000 + -- Launchpad Package Builder Sun, 03 Mar 2013 16:41:59 +0000 gedit-debugger (0.1-0~ppa1) UNRELEASED; urgency=low diff -Nru gedit-debugger-0.1~bzr112~quantal1/pydebugger/window.py gedit-debugger-0.1~bzr113~quantal1/pydebugger/window.py --- gedit-debugger-0.1~bzr112~quantal1/pydebugger/window.py 2013-01-31 14:02:03.000000000 +0000 +++ gedit-debugger-0.1~bzr113~quantal1/pydebugger/window.py 2013-03-03 16:41:59.000000000 +0000 @@ -399,7 +399,7 @@ self.sidepanel = Panel(panel, "DebuggerSidePanel", self.paned_sidepanel) args = self.entry_arguments.get_text() - workingdir = self.entry_workingdir.get_text() + workingdir = self.get_workingdir(path) self.debugger.start(path, args, workingdir) for cnum, snum, filename, lineno, enabled in self.breakpoints: doc = self.get_document_from_file(filename) @@ -431,6 +431,16 @@ panel = self.window.get_side_panel() self.sidepanel.deactivate(panel, self.paned_sidepanel) + def get_workingdir(self, ref_filename): + workingdir = self.entry_workingdir.get_text() + if workingdir.startswith('/'): + return workingdir + dirname = os.path.dirname(ref_filename) + dirname = os.path.join(dirname, workingdir) + if os.path.isfile(dirname): + dirname = os.path.dirname(dirname) + return dirname + def check_execline(self, doc, titer): lang = doc.get_language() try: @@ -732,9 +742,8 @@ def on_entry_workingdir_activate(self, unused_entry): if self.debugger and self.debugger.running: - workingdir = self.entry_workingdir.get_text() - if workingdir: - self.debugger.chdir(workingdir) + workingdir = self.get_workingdir(self.debugger.filename) + self.debugger.chdir(workingdir)