diff -r 8a68afaf1ba2 -r 506e35e424d5 eric7/WebBrowser/Bookmarks/BookmarksManager.py --- a/eric7/WebBrowser/Bookmarks/BookmarksManager.py Thu Jun 16 18:28:59 2022 +0200 +++ b/eric7/WebBrowser/Bookmarks/BookmarksManager.py Fri Jun 17 16:36:14 2022 +0200 @@ -9,10 +9,11 @@ import os import contextlib +import pathlib from PyQt6.QtCore import ( pyqtSignal, QT_TRANSLATE_NOOP, QObject, QFile, QIODevice, QXmlStreamReader, - QDateTime, QFileInfo, QUrl, QCoreApplication + QDateTime, QUrl, QCoreApplication ) from PyQt6.QtGui import QUndoStack, QUndoCommand from PyQt6.QtWidgets import QDialog @@ -398,25 +399,24 @@ if not fileName: return - ext = QFileInfo(fileName).suffix() - if not ext: + fpath = pathlib.Path(fileName) + if not fpath.suffix: ex = selectedFilter.split("(*")[1].split(")")[0] if ex: - fileName += ex + fpath = fpath.with_suffix(ex) - ext = QFileInfo(fileName).suffix() - if ext == "html": + if fpath.suffix == ".html": from .NsHtmlWriter import NsHtmlWriter writer = NsHtmlWriter() else: from .XbelWriter import XbelWriter writer = XbelWriter() - if not writer.write(fileName, self.__bookmarkRootNode): + if not writer.write(str(fpath), self.__bookmarkRootNode): EricMessageBox.critical( None, self.tr("Exporting Bookmarks"), self.tr("""Error exporting bookmarks to <b>{0}</b>.""") - .format(fileName)) + .format(fpath)) def faviconChanged(self, url): """