mirror of
https://github.com/ankitects/anki.git
synced 2025-09-24 16:56:36 -04:00
cleanup old mplayer instances after crash
fixes https://anki.tenderapp.com/discussions/ankidesktop/31908-no-consigo-renomear-meu-nome-no-anki
This commit is contained in:
parent
bf6e10ec88
commit
041e4dbdf0
1 changed files with 20 additions and 0 deletions
|
@ -142,10 +142,30 @@ def cleanupMPV():
|
||||||
# Mplayer in slave mode
|
# Mplayer in slave mode
|
||||||
##########################################################################
|
##########################################################################
|
||||||
|
|
||||||
|
# if anki crashes, an old mplayer instance may be left lying around,
|
||||||
|
# which prevents renaming or deleting the profile
|
||||||
|
def cleanupOldMplayerProcesses():
|
||||||
|
import psutil
|
||||||
|
|
||||||
|
exeDir = os.path.dirname(os.path.abspath(sys.argv[0]))
|
||||||
|
|
||||||
|
for proc in psutil.process_iter(attrs=['pid', 'name', 'exe']):
|
||||||
|
if not proc.info['exe'] or proc.info['name'] != 'mplayer.exe':
|
||||||
|
continue
|
||||||
|
|
||||||
|
# not anki's bundled mplayer
|
||||||
|
if os.path.dirname(proc.info['exe']) != exeDir:
|
||||||
|
continue
|
||||||
|
|
||||||
|
print("terminating old mplayer process...")
|
||||||
|
proc.kill()
|
||||||
|
|
||||||
mplayerCmd = ["mplayer", "-really-quiet", "-noautosub"]
|
mplayerCmd = ["mplayer", "-really-quiet", "-noautosub"]
|
||||||
if isWin:
|
if isWin:
|
||||||
mplayerCmd += ["-ao", "win32"]
|
mplayerCmd += ["-ao", "win32"]
|
||||||
|
|
||||||
|
cleanupOldMplayerProcesses()
|
||||||
|
|
||||||
mplayerQueue = []
|
mplayerQueue = []
|
||||||
mplayerManager = None
|
mplayerManager = None
|
||||||
mplayerReader = None
|
mplayerReader = None
|
||||||
|
|
Loading…
Reference in a new issue