python segfault

Michael Poeltl michael.poeltl at univie.ac.at
Wed Mar 28 00:27:57 CEST 2012


hi,

can anybody tell why this 'little stupid *thing* of code' let's python-3.2.2, 2.6.X or python 2.7.2 segfault?

>> def get_steps2(pos=0, steps=0):
...     if steps == 0:
...         pos = random.randint(-1,1)
...     if pos == 0:
...         return steps
...     steps += 2
...     pos += random.randint(-1,1)
...     return get_steps2(pos,steps)
...
>>> import random, sys
>>> sys.setrecursionlimit(100000)
>>> for i in range(200):
...     print ( get_steps2() )
...
4
0
8
0
0
0
2
2
166
2
0
0
16
4
2
16
0
0
10
70
152
50
58
0
6
0
0
0
2
8
0
Segmentation fault
?>

funny, isn't it?
I was able to reproduce this segfault on various machines (32bit 64bit), ubuntu, slackware, debian
python.X segfaults on all of them

thx
Michael
-- 
Michael Poeltl
Computational Materials Physics      voice: +43-1-4277-51409
Univ. Wien, Sensengasse 8/12         fax:   +43-1-4277-9514 (or 9513) 
A-1090 Wien, AUSTRIA   cmp.mpi.univie.ac.at 
-------------------------------------------------------------------------------
ubuntu-11.10 | vim-7.3 | python-3.2.2 | mutt-1.5.21 | elinks-0.12
-------------------------------------------------------------------------------



More information about the Python-list mailing list