Ned Deily added the comment:

After writing the simplest possible test of open(2) in C to eliminate anything 
in Python, I finally established that the seemingly random behavior of the test 
is in fact caused by a rather odd bug in OS X 10.4.  The filename being used in 
the test is intended to be invalidly encoded.  On 10.4, open(2) of that 
filename returns errno 2 (ENOENT) as expected *if* the containing directory is 
empty.  But if there is at least one existing file in the directory, the open 
returns errno 22 (EINVAL) instead.  Go figure!  Knowing that, it's easy to 
reproduce the test failure by running the test directly.  So, the buildbot 
failures are intermittent depending on what files previous tests have left 
behind in the working directory. (I haven't checked intermediate versions but 
current OS X 10.8 does not have this odd behavior: ENOENT is always returned.)  
The original proposed solution still seems to me to be the right one: simply 
change the test to pass if either EINVAL or ENOENT is returned.

----------
assignee:  -> ned.deily
stage: patch review -> commit review
Added file: http://bugs.python.org/file29038/issue17111.patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue17111>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to