Insist that the argument to TextIOWrapper.write() is a basestring
instance. This was effectively already the case, but the error reporting was lousy.
This commit is contained in:
parent
e8a17aafca
commit
dcce8391d1
@ -1093,6 +1093,9 @@ class TextIOWrapper(TextIOBase):
|
|||||||
def write(self, s: str):
|
def write(self, s: str):
|
||||||
if self.closed:
|
if self.closed:
|
||||||
raise ValueError("write to closed file")
|
raise ValueError("write to closed file")
|
||||||
|
if not isinstance(s, basestring):
|
||||||
|
raise TypeError("can't write %s to text stream" %
|
||||||
|
s.__class__.__name__)
|
||||||
haslf = "\n" in s
|
haslf = "\n" in s
|
||||||
if haslf and self._writetranslate and self._writenl != "\n":
|
if haslf and self._writetranslate and self._writenl != "\n":
|
||||||
s = s.replace("\n", self._writenl)
|
s = s.replace("\n", self._writenl)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user