459 sys.setappdefaultencoding(self.__coding) |
459 sys.setappdefaultencoding(self.__coding) |
460 except AttributeError: |
460 except AttributeError: |
461 pass |
461 pass |
462 sys.argv.append(fn) |
462 sys.argv.append(fn) |
463 sys.argv.extend(eval(args.replace("u'", "'"))) |
463 sys.argv.extend(eval(args.replace("u'", "'"))) |
464 sys.path[0] = os.path.dirname(sys.argv[0]) |
464 sys.path = self.__getSysPath(os.path.dirname(sys.argv[0])) |
465 sys.path.insert(0, '') |
|
466 if wd == '': |
465 if wd == '': |
467 os.chdir(sys.path[1]) |
466 os.chdir(sys.path[1]) |
468 else: |
467 else: |
469 os.chdir(wd) |
468 os.chdir(wd) |
470 tracePython = int(tracePython) |
469 tracePython = int(tracePython) |
506 sys.setappdefaultencoding(self.__coding) |
505 sys.setappdefaultencoding(self.__coding) |
507 except AttributeError: |
506 except AttributeError: |
508 pass |
507 pass |
509 sys.argv.append(fn) |
508 sys.argv.append(fn) |
510 sys.argv.extend(eval(args.replace("u'", "'"))) |
509 sys.argv.extend(eval(args.replace("u'", "'"))) |
511 sys.path[0] = os.path.dirname(sys.argv[0]) |
510 sys.path = self.__getSysPath(os.path.dirname(sys.argv[0])) |
512 sys.path.insert(0, '') |
|
513 if wd == '': |
511 if wd == '': |
514 os.chdir(sys.path[1]) |
512 os.chdir(sys.path[1]) |
515 else: |
513 else: |
516 os.chdir(wd) |
514 os.chdir(wd) |
517 |
515 |
545 sys.setappdefaultencoding(self.__coding) |
543 sys.setappdefaultencoding(self.__coding) |
546 except AttributeError: |
544 except AttributeError: |
547 pass |
545 pass |
548 sys.argv.append(fn) |
546 sys.argv.append(fn) |
549 sys.argv.extend(eval(args.replace("u'", "'"))) |
547 sys.argv.extend(eval(args.replace("u'", "'"))) |
550 sys.path[0] = os.path.dirname(sys.argv[0]) |
548 sys.path = self.__getSysPath(os.path.dirname(sys.argv[0])) |
551 sys.path.insert(0, '') |
|
552 if wd == '': |
549 if wd == '': |
553 os.chdir(sys.path[1]) |
550 os.chdir(sys.path[1]) |
554 else: |
551 else: |
555 os.chdir(wd) |
552 os.chdir(wd) |
556 |
553 |
585 sys.setappdefaultencoding(self.__coding) |
582 sys.setappdefaultencoding(self.__coding) |
586 except AttributeError: |
583 except AttributeError: |
587 pass |
584 pass |
588 sys.argv.append(fn) |
585 sys.argv.append(fn) |
589 sys.argv.extend(eval(args.replace("u'", "'"))) |
586 sys.argv.extend(eval(args.replace("u'", "'"))) |
590 sys.path[0] = os.path.dirname(sys.argv[0]) |
587 sys.path = self.__getSysPath(os.path.dirname(sys.argv[0])) |
591 sys.path.insert(0, '') |
|
592 if wd == '': |
588 if wd == '': |
593 os.chdir(sys.path[1]) |
589 os.chdir(sys.path[1]) |
594 else: |
590 else: |
595 os.chdir(wd) |
591 os.chdir(wd) |
596 |
592 |
1781 |
1777 |
1782 self.fncache = {} |
1778 self.fncache = {} |
1783 self.dircache = [] |
1779 self.dircache = [] |
1784 sys.argv = progargs[:] |
1780 sys.argv = progargs[:] |
1785 sys.argv[0] = os.path.abspath(sys.argv[0]) |
1781 sys.argv[0] = os.path.abspath(sys.argv[0]) |
1786 sys.path[0] = os.path.dirname(sys.argv[0]) |
1782 sys.path = self.__getSysPath(os.path.dirname(sys.argv[0])) |
1787 sys.path.insert(0, '') |
|
1788 if wd == '': |
1783 if wd == '': |
1789 os.chdir(sys.path[1]) |
1784 os.chdir(sys.path[1]) |
1790 else: |
1785 else: |
1791 os.chdir(wd) |
1786 os.chdir(wd) |
1792 self.running = sys.argv[0] |
1787 self.running = sys.argv[0] |
1979 if fd in [self.readstream.fileno(), self.writestream.fileno(), |
1974 if fd in [self.readstream.fileno(), self.writestream.fileno(), |
1980 self.errorstream.fileno()]: |
1975 self.errorstream.fileno()]: |
1981 return |
1976 return |
1982 |
1977 |
1983 DebugClientOrigClose(fd) |
1978 DebugClientOrigClose(fd) |
|
1979 |
|
1980 def __getSysPath(self, firstEntry): |
|
1981 """ |
|
1982 Private slot to calculate a path list including the PYTHONPATH |
|
1983 environment variable. |
|
1984 |
|
1985 @param firstEntry entry to be put first in sys.path (string) |
|
1986 @return path list for use as sys.path (list of strings) |
|
1987 """ |
|
1988 sysPath = [path for path in os.environ.get("PYTHONPATH", "").split(os.pathsep) |
|
1989 if path not in sys.path] + sys.path[:] |
|
1990 if "" in sysPath: |
|
1991 sysPath.remove("") |
|
1992 sysPath.insert(0, firstEntry) |
|
1993 sysPath.insert(0, '') |
|
1994 return sysPath |