From 223f8fc1ff3b29c41603254aef28ea8c57807eb9 Mon Sep 17 00:00:00 2001 From: Rob McMullen Date: Sun, 24 Jun 2018 09:53:22 -0700 Subject: [PATCH] Fixed #12: changed utf-8 encoding to latin1 --- atrcopy/ataridos.py | 7 +++---- atrcopy/spartados.py | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/atrcopy/ataridos.py b/atrcopy/ataridos.py index c8c98cc..d1dc26f 100644 --- a/atrcopy/ataridos.py +++ b/atrcopy/ataridos.py @@ -97,8 +97,7 @@ class AtariDosDirent(Dirent): self.parse_raw_dirent(image, bytes) def __str__(self): - # return (b'File #%-2d (%s) %03d %-8s%-3s %03d' % (self.file_num, self.summary.encode("utf-8"), self.starting_sector, self.basename, self.ext, self.num_sectors)).decode("utf-8") - return "File #%-2d (%s) %03d %-8s%-3s %03d" % (self.file_num, self.summary, self.starting_sector, self.basename.decode("utf-8"), self.ext.decode("utf-8"), self.num_sectors) + return "File #%-2d (%s) %03d %-8s%-3s %03d" % (self.file_num, self.summary, self.starting_sector, self.basename.decode("latin1"), self.ext.decode("latin1"), self.num_sectors) def __eq__(self, other): return self.__class__ == other.__class__ and self.filename == other.filename and self.starting_sector == other.starting_sector and self.num_sectors == other.num_sectors @@ -106,7 +105,7 @@ class AtariDosDirent(Dirent): @property def filename(self): ext = (b'.' + self.ext) if self.ext else b'' - return (self.basename + ext).decode('utf-8') + return (self.basename + ext).decode('latin1') @property def summary(self): @@ -222,7 +221,7 @@ class AtariDosDirent(Dirent): def set_values(self, filename, filetype, index): if type(filename) is not bytes: - filename = filename.encode("utf-8") + filename = filename.encode("latin1") if b'.' in filename: filename, ext = filename.split(b'.', 1) else: diff --git a/atrcopy/spartados.py b/atrcopy/spartados.py index 8cbaaee..b804134 100644 --- a/atrcopy/spartados.py +++ b/atrcopy/spartados.py @@ -38,7 +38,7 @@ class SpartaDosDirent(AtariDosDirent): deleted = "d" if self.deleted else "." locked = "*" if self.locked else " " flags = "%s%s%s%s%s %03d" % (output, subdir, in_use, deleted, locked, self.starting_sector) - return "File #%-2d (%s) %-8s%-3s %8d %s" % (self.file_num, flags, self.basename.decode('utf-8'), self.ext.decode('utf-8'), self.length, self.str_timestamp) + return "File #%-2d (%s) %-8s%-3s %8d %s" % (self.file_num, flags, self.basename.decode('latin1'), self.ext.decode('latin1'), self.length, self.str_timestamp) @property def verbose_info(self):