Message154267
| Author |
skrah |
| Recipients |
brett.cannon, eric.snow, nadeem.vawda, ncoghlan, pitrou, skrah |
| Date |
2012年02月25日.16:09:57 |
| SpamBayes Score |
0.00026319738 |
| Marked as misclassified |
No |
| Message-id |
<1330186198.77.0.0984848109662.issue14080@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
OK, I stepped in parallel through the non-failing and the failing
versions. The first divergence is when _path_mtime is compared.
The comparison in the good version returns 'False', the one in the
bad version returns 'True':
Good version (Fedora 16):
(gdb) p w
148ドル = '_path_mtime'
(gdb) n
2278 x = PyObject_GetAttr(v, w);
(gdb) p v
149ドル =
<_FileFinder(_relaxed_path_cache=set(), path='.', packages=[('.py', <type at remote 0xab4bc0>), ('.pyc', <type at remote 0xab4f40>)], _path_cache=set(), _cache_refresh=0, _path_mtime=<float at remote 0xa6a7d0>, modules=[('.cpython-33m.so', <type at remote 0xab55d0>), ('.abi3.so', <type at remote 0xab55d0>), ('.so', <type at remote 0xab55d0>), ('.py', <type at remote 0xab4bc0>), ('.pyc', <type at remote 0xab4f40>)]) at remote 0x7ffff4128310>
(gdb) n
2279 Py_DECREF(v);
(gdb) p x
150ドル = <float at remote 0xa6a7d0>
(gdb) n
2280 SET_TOP(x);
(gdb) n
2281 if (x != NULL) DISPATCH();
(gdb) n
2284 TARGET(COMPARE_OP)
(gdb) n
2285 w = POP();
(gdb) n
2286 v = TOP();
(gdb) n
2287 x = cmp_outcome(oparg, v, w);
(gdb) n
2288 Py_DECREF(v);
(gdb) p w
151ドル = <float at remote 0xa6a7d0>
(gdb) p v
152ドル = <float at remote 0xa6a6f8>
(gdb) p x
153ドル = False
(gdb)
Bad version (Ubuntu):
(gdb) p w
154ドル = '_path_mtime'
(gdb) p v
155ドル = <float at remote 0xa66090>
(gdb) n
2278 x = PyObject_GetAttr(v, w);
(gdb) p v
156ドル =
<_FileFinder(_relaxed_path_cache=set(), packages=[('.py', <type at remote 0xaaff60>), ('.p
yc', <type at remote 0xab02e0>)], _path_mtime=<float at remote 0xa66120>, modules=[('.cpython-
33m.so', <type at remote 0xab0970>), ('.abi3.so', <type at remote 0xab0970>), ('.so', <type at
remote 0xab0970>), ('.py', <type at remote 0xaaff60>), ('.pyc', <type at remote 0xab02e0>)],
path='.', _cache_refresh=0, _path_cache=set()) at remote 0x7ffff2b7f6d0>
(gdb) n
2279 Py_DECREF(v);
(gdb) p x
157ドル = <float at remote 0xa66120>
(gdb) n
2280 SET_TOP(x);
(gdb) n
2281 if (x != NULL) DISPATCH();
(gdb) n
2284 TARGET(COMPARE_OP)
(gdb) n
2285 w = POP();
(gdb) n
2286 v = TOP();
(gdb) n
2287 x = cmp_outcome(oparg, v, w);
(gdb) n
2288 Py_DECREF(v);
(gdb) p w
158ドル = <float at remote 0xa66120>
(gdb) p v
159ドル = <float at remote 0xa66090>
(gdb) p x
160ドル = True |
|