Karim BELABAS on Fri, 7 Jan 2000 13:21:24 +0100 (MET) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
Re: zeta/ploth bug |
[Igor:] > ? ploth(x=-5,-4.99,real(zeta(x*I+x^2+x^3))) > [-5.000000000000000000000000000, -4.990000000000000213162820728, 6.497774210233059296627777801 E79, 4.946657447140776084782559651 E80] > ? *** bug in GP (Segmentation Fault), please report > *** bug in GP (Segmentation Fault), please report > > At this point the session is badly corrupted and has to be killed. An interesting bug. There was a buffer overflow when creating a label larger than 10^16 (for the bounding box). In fact, I tried the X-Windows version (default) and the worse things (infinite sequence of SIGBUS and SIGSEGV) happened in a forked process. So killing the original GP wasn't enough: I had to kill the underlying terminal... I changed the format specification so that only 5 significant digits are given. This is arbitrary, but since the precise coordinates are part of the return value, I don't think there's a need for higher precision there. Karim. Index: src/graph/plotport.c =================================================================== RCS file: /home/megrez/cvsroot/pari/src/graph/plotport.c,v retrieving revision 1.5 diff -c -r1.5 plotport.c *** src/graph/plotport.c 1999/12/03 18:10:46 1.5 --- src/graph/plotport.c 2000/01/07 12:12:50 *************** *** 1563,1570 **** { char c1[16],c2[16],c3[16],c4[16]; ! sprintf(c1,"%5.3f",ybig); sprintf(c2,"%5.3f",ysml); ! sprintf(c3,"%5.3f",xsml); sprintf(c4,"%5.3f",xbig); rectlinetype(stringrect,-2); /* Frame */ current_color[stringrect]=BLACK; --- 1563,1570 ---- { char c1[16],c2[16],c3[16],c4[16]; ! sprintf(c1,"%.5g",ybig); sprintf(c2,"%.5g",ysml); ! sprintf(c3,"%.5g",xsml); sprintf(c4,"%.5g",xbig); rectlinetype(stringrect,-2); /* Frame */ current_color[stringrect]=BLACK; __ Karim Belabas email: Karim.Belabas@math.u-psud.fr Dep. de Mathematiques, Bat. 425 Universite Paris-Sud Tel: (00 33) 1 69 15 57 48 F-91405 Orsay (France) Fax: (00 33) 1 69 15 60 19 -- PARI/GP Home Page: http://hasse.mathematik.tu-muenchen.de/ntsw/pari/