Edgewall Software
Modify

Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#10607 closed defect (fixed)

GitPlugin: Don't use Popen terminate()

Reported by: Peter Suter Owned by: Peter Suter
Priority: normal Milestone: 1.0
Component: plugin/git Version:
Severity: normal Keywords:
Cc: Branch:
Release Notes:

Properly terminate git subprocesses (fix Python 2.5 incompatibilities and Windows specific issues)

API Changes:

Description

Created as part of the move of GitPlugin. Tickets originally reported for th:GitPlugin: th:#9560, th:#9581, #9646

Replying to sjtoik:

popen.terminate have been introduced in python 2.6

Replying to Greg:

It seems that calling p[0].terminate() (on lines 744 and 760 of PyGIT.py) will fail with the access is denied message on Windows

Attachments (0)

Change History (4)

comment:1 by Peter Suter, 7 years ago

[11000] replaces subprocess.Popen.terminate() (which is only available since Python 2.6) with a quite ugly mix of win32api.TerminateProcess on Windows and os.kill() elsewhere.

I still get the access is denied errors on Windows, so I added a try: ... except: ... for that.

Any better ideas?

comment:2 by Peter Suter, 7 years ago

Milestone: 0.13
Resolution: fixed
Status: newclosed

[11031] fixes some Python 2.5 incompatibilities and replaces the use of pywin32 (win32api.TerminateProcess introduced in [11000] above) on Windows with ctypes, which is included with Python since 2.5. (These were also mentioned in th:#9560)

comment:3 by Peter Suter, 7 years ago

Owner: set to Peter Suter

comment:4 by Christian Boos, 7 years ago

Release Notes: modified (diff)

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain Peter Suter.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.