ensure user doesn't try to export into data folder
https://anki.tenderapp.com/discussions/ankidesktop/39008-export-path-accidentally-set-to-collectionmedia-possible-damage
This commit is contained in:
parent
06dee0ef08
commit
f71484a444
@ -1,6 +1,8 @@
|
||||
# Copyright: Ankitects Pty Ltd and contributors
|
||||
# License: GNU AGPL, version 3 or later; http://www.gnu.org/licenses/agpl.html
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
import re
|
||||
import time
|
||||
@ -15,7 +17,7 @@ from aqt.utils import checkInvalidFilename, getSaveFile, showWarning, tooltip
|
||||
|
||||
|
||||
class ExportDialog(QDialog):
|
||||
def __init__(self, mw, did: Optional[int] = None, cids: Optional[List[int]] = None):
|
||||
def __init__(self, mw: aqt.main.AnkiQt, did: Optional[int] = None, cids: Optional[List[int]] = None):
|
||||
QDialog.__init__(self, mw, Qt.Window)
|
||||
self.mw = mw
|
||||
self.col = mw.col
|
||||
@ -118,6 +120,9 @@ class ExportDialog(QDialog):
|
||||
return
|
||||
if checkInvalidFilename(os.path.basename(file), dirsep=False):
|
||||
continue
|
||||
if os.path.commonprefix([self.mw.pm.base, file]) == self.mw.pm.base:
|
||||
showWarning("Please choose a different export location.")
|
||||
continue
|
||||
break
|
||||
self.hide()
|
||||
if file:
|
||||
|
Loading…
Reference in New Issue
Block a user