summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorKurt B. Kaiser <kbk@shore.net>2007-08-22 18:06:14 (GMT)
committerKurt B. Kaiser <kbk@shore.net>2007-08-22 18:06:14 (GMT)
commit3a4e24b999d86eb84f026bbf009cedf4bdf1c575 (patch)
treeb3b67f085d52e7e86709e115ace58e2ce9f59732 /Lib
parent23cfc9845c9b0fdeb4759bd120cf6a465bf0af9e (diff)
downloadcpython-3a4e24b999d86eb84f026bbf009cedf4bdf1c575.zip
cpython-3a4e24b999d86eb84f026bbf009cedf4bdf1c575.tar.gz
cpython-3a4e24b999d86eb84f026bbf009cedf4bdf1c575.tar.bz2
1. Fix File Open: don't encode filename to UTF-8 bytes
2. Get test() code working.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/idlelib/IOBinding.py14
1 files changed, 6 insertions, 8 deletions
diff --git a/Lib/idlelib/IOBinding.py b/Lib/idlelib/IOBinding.py
index e2f75aa..3e45daf 100644
--- a/Lib/idlelib/IOBinding.py
+++ b/Lib/idlelib/IOBinding.py
@@ -14,9 +14,9 @@ import tkFileDialog
import tkMessageBox
import re
from Tkinter import *
-from .SimpleDialog import SimpleDialog
+from SimpleDialog import SimpleDialog
-from .configHandler import idleConf
+from idlelib.configHandler import idleConf
try:
from codecs import BOM_UTF8
@@ -244,14 +244,13 @@ class IOBinding:
def loadfile(self, filename):
try:
# open the file in binary mode so that we can handle
- # end-of-line convention ourselves.
+ # end-of-line convention ourselves.
f = open(filename,'rb')
chars = f.read()
f.close()
except IOError as msg:
tkMessageBox.showerror("I/O Error", str(msg), master=self.text)
return False
-
chars = self.decode(chars)
# We now convert all end-of-lines to '\n's
firsteol = self.eol_re.search(chars)
@@ -261,7 +260,6 @@ class IOBinding:
# Make sure it is an ASCII string
self.eol_convention = self.eol_convention.encode("ascii")
chars = self.eol_re.sub(r"\n", chars)
-
self.text.delete("1.0", "end")
self.set_filename(None)
self.text.insert("1.0", chars)
@@ -524,8 +522,7 @@ class IOBinding:
self.opendialog = tkFileDialog.Open(master=self.text,
filetypes=self.filetypes)
filename = self.opendialog.show(initialdir=dir, initialfile=base)
- if isinstance(filename, str):
- filename = filename.encode(filesystemencoding)
+ assert isinstance(filename, str)
return filename
def defaultfilename(self, mode="open"):
@@ -550,7 +547,8 @@ class IOBinding:
def updaterecentfileslist(self,filename):
"Update recent file list on all editor windows"
- self.editwin.update_recent_files_list(filename)
+ if self.editwin.flist:
+ self.editwin.update_recent_files_list(filename)
def test():
root = Tk()