[tex-live] mf segfault

Olaf Weber olaf at infovore.xs4all.nl
Thu Dec 23 22:36:58 CET 2004


Werner LEMBERG writes:

>> Well, the same seg fault occured using nonstriped mf binary.
>> Compiled and tested on the same machine (RH9.0)

> Yes, I've sent a backtrace to Olaf already.  For the interested, I'm
> repeating it here.

> ======================================================================

> Program received signal SIGSEGV, Segmentation fault.
> 0x0806e781 in zpwithxbecomingq (p=6725, x=4719, q=48049, t=17 '\021')
>     at mf1.c:2382
> (gdb) bt
> #0  0x0806e781 in zpwithxbecomingq (p=6725, x=4719, q=48049, t=17 '\021')
>     at mf1.c:2382

In mf1.c:

   2381   sx = mem [x + 1 ].cint ;
*  2382   while ( mem [mem [s ].hhfield .lhfield + 1 ].cint > sx ) {
   2383
   2384     r = s ;
   2385     s = mem [s ].hhfield .v.RH ;
   2386   }

In mf.web:

  12790 @p function p_with_x_becoming_q(@!p,@!x,@!q:pointer;@!t:small_number):pointer;
  12791 var @!r,@!s:pointer; {for list manipulation}
  12792 @!v:integer; {coefficient of |x|}
  12793 @!sx:integer; {serial number of |x|}
  12794 begin s:=p; r:=temp_head; sx:=value(x);
* 12795 while value(info(s))>sx do
  12796   begin r:=s; s:=link(s);
  12797   end;
  12798 if info(s)<>x then p_with_x_becoming_q:=p
  12799 else  begin link(temp_head):=p; link(r):=link(s); v:=value(s);
  12800   free_node(s,dep_node_size);
  12801   p_with_x_becoming_q:=p_plus_fq(link(temp_head),v,q,t,dependent);
  12802   end;
  12803 end;

I still cannot duplicate the crash, and am not certain what's going on
either.

-- 
Olaf Weber

               (This space left blank for technical reasons.)



More information about the tex-live mailing list