Author: Brian Kearns <[email protected]>
Branch: use-file-star-for-file
Changeset: r73404:6d1e13b03f9a
Date: 2014-09-09 13:56 -0400
http://bitbucket.org/pypy/pypy/changeset/6d1e13b03f9a/

Log:    ensure imp.find_module fobj has a name

diff --git a/pypy/module/_file/interp_file.py b/pypy/module/_file/interp_file.py
--- a/pypy/module/_file/interp_file.py
+++ b/pypy/module/_file/interp_file.py
@@ -56,7 +56,7 @@
             w_error = space.call_function(space.w_IOError, 
space.wrap(e.errno), space.wrap(e.strerror), self.w_name)
             raise OperationError(space.w_IOError, w_error)
 
-    def fdopenstream(self, stream, mode):
+    def fdopenstream(self, stream, mode, w_name=None):
         self.stream = stream
         self.mode = mode
         self.binary = "b" in mode
@@ -66,6 +66,8 @@
             self.writable = True
         if '+' in mode:
             self.readable = self.writable = True
+        if w_name is not None:
+            self.w_name = w_name
         getopenstreams(self.space)[stream] = None
 
     def check_closed(self):
diff --git a/pypy/module/imp/interp_imp.py b/pypy/module/imp/interp_imp.py
--- a/pypy/module/imp/interp_imp.py
+++ b/pypy/module/imp/interp_imp.py
@@ -55,7 +55,7 @@
     if stream is not None:
         fileobj = W_File(space)
         fileobj.fdopenstream(
-            stream, find_info.filemode)
+            stream, find_info.filemode, w_filename)
         w_fileobj = space.wrap(fileobj)
     else:
         w_fileobj = space.w_None
diff --git a/pypy/module/imp/test/test_app.py b/pypy/module/imp/test/test_app.py
--- a/pypy/module/imp/test/test_app.py
+++ b/pypy/module/imp/test/test_app.py
@@ -32,6 +32,7 @@
         import os
         file, pathname, description = self.imp.find_module('StringIO')
         assert file is not None
+        assert file.name.endswith("StringIO.py")
         file.close()
         assert os.path.exists(pathname)
         pathname = pathname.lower()
_______________________________________________
pypy-commit mailing list
[email protected]
https://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to