diff -r a357729cb749 -r d3e21f44887b src/eric7/RemoteServer/EricServerFileSystemRequestHandler.py --- a/src/eric7/RemoteServer/EricServerFileSystemRequestHandler.py Mon Feb 05 12:09:13 2024 +0100 +++ b/src/eric7/RemoteServer/EricServerFileSystemRequestHandler.py Mon Feb 05 13:46:48 2024 +0100 @@ -115,29 +115,36 @@ if not directory: directory = os.getcwd() - listing = [] - for dirEntry in os.scandir(directory): - filestat = dirEntry.stat() - entry = { - "name": dirEntry.name, - "path": dirEntry.path, - "is_dir": dirEntry.is_dir(), - "is_file": dirEntry.is_file(), - "is_link": dirEntry.is_symlink(), - "mode": filestat.st_mode, - "mode_str": stat.filemode(filestat.st_mode), - "size": filestat.st_size, - "mtime": time.strftime( - "%Y-%m-%d %H:%M:%S", time.localtime(filestat.st_mtime) - ), + try: + listing = [] + for dirEntry in os.scandir(directory): + filestat = dirEntry.stat() + entry = { + "name": dirEntry.name, + "path": dirEntry.path, + "is_dir": dirEntry.is_dir(), + "is_file": dirEntry.is_file(), + "is_link": dirEntry.is_symlink(), + "mode": filestat.st_mode, + "mode_str": stat.filemode(filestat.st_mode), + "size": filestat.st_size, + "mtime": time.strftime( + "%Y-%m-%d %H:%M:%S", time.localtime(filestat.st_mtime) + ), + } + listing.append(entry) + + return { + "ok": True, + "directory": directory, + "listing": listing, + "separator": os.sep, } - listing.append(entry) - - return { - "directory": directory, - "listing": listing, - "separator": os.sep, - } + except OSError as err: + return { + "ok": False, + "error": str(err), + } def __stat(self, params): """