Issue 234 in mpmath: segmentation fault when calling the mpmath.mp.fraction(1,100).func(1000,None)

4 views
Skip to first unread message

mpm...@googlecode.com

unread,
Feb 9, 2013, 9:47:21 AM2/9/13
to mpmath...@googlegroups.com
Status: New
Owner: ----

New issue 234 by and...@purdea.ro: segmentation fault when calling the
mpmath.mp.fraction(1,100).func(1000,None)
http://code.google.com/p/mpmath/issues/detail?id=234

What steps will reproduce the problem?
1. make sure gmpy is installed
2. import mpmath
3. mpmath.mp.fraction(1,100).func(1000, 0xdead )

What is the expected output? What do you see instead?

Some kind of exception. The python backend produces a KeyError

What version of the product are you using? On what operating system?
Debian testing distribution
python-mpmath = 0.17-1
python-gmpy = 1.15-1

Please provide any additional information below.

When the type of the last parameter is not correct, (say None, or an
integer) A segmentation fault happens, when using gmpy.


mpm...@googlecode.com

unread,
Feb 23, 2013, 1:36:20 PM2/23/13
to mpmath...@googlegroups.com

Comment #1 on issue 234 by cas...@gmail.com: segmentation fault when
calling the mpmath.mp.fraction(1,100).func(1000,None)
http://code.google.com/p/mpmath/issues/detail?id=234

The code in gmpy didn't properly check the rounding mode. If the rounding
mode is not a string, gmpy would cause a segmentation fault. I just
committed a patch to gmpy2 (the next major version of gmpy) that should fix
the issue.

>>> import mpmath
>>> mpmath.mp.fraction(1,100).func(100,None)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "mpmath/ctx_mp.py", line 1184, in <lambda>
return ctx.constant(lambda prec, rnd: from_rational(p, q, prec, rnd),
File "mpmath/libmp/libmpf.py", line 468, in from_rational
return mpf_div(from_int(p), from_int(q), prec, rnd)
File "mpmath/libmp/libmpf.py", line 958, in mpf_div
return normalize1(sign, quot, sexp-texp-extra, bitcount(quot), prec,
rnd)
ValueError: invalid rounding mode specified


Can you test the svn version of gmpy2? I have created issue 68 at
code.google.com/p/gmpy/ to track this issue.

--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

mpm...@googlecode.com

unread,
Feb 23, 2013, 1:38:00 PM2/23/13
to mpmath...@googlegroups.com
Updates:
Status: Accepted
Owner: cas...@gmail.com

Comment #2 on issue 234 by cas...@gmail.com: segmentation fault when
calling the mpmath.mp.fraction(1,100).func(1000,None)
http://code.google.com/p/mpmath/issues/detail?id=234

Taking ownership....
Reply all
Reply to author
Forward
0 new messages