Thomas Henlich writes: > Processing the following files with xindy leads to a SEGMENTATION FAULT. > Both i386-linux-glibc and i386-linux-elf versions are affected. > The output is: > ===== > ~/xindy$ xindy -L 3 -l test.xlg test.xdy test.raw > This is `xindy' version 2.0 (i386-linux-glibc2 binary version 2.0). > > Opening logfile "test.xlg" (done) > Reading indexstyle... > Loading module "test.xdy"... > Finished loading module "test.xdy". > Finished reading indexstyle. > Finalizing indexstyle... (done) > > Reading raw-index "test.raw"... > Finished reading raw-index. > > Processing index... > *** - handle_fault error2 ! address = 0x7D241E not in > [0x20195000,0x2028C6C8) ! > SIGSEGV cannot be cured. Fault address = 0x7D241E. > Speicherzugriffsfehler > > [...] > > Any clues? How can I debug xindy? > -- > Thomas Henlich The bug is caused by some rudimentary limitation on the length of strings to be processed. There was a buffer of length 128 on the heap which was not bounds-checked. I lifted the limit to 4096 for the moment which should be enough for most applications. The quick fix is to #define STRING_MAX 1024 in "mkind.h" instead of 128 ;-) If anybody seems to need more space for the length of keywords in his applications, tell me. I'll integrate it into a future release... Cheers, Roger -- ====================================================================== Roger Kehr kehr@informatik.tu-darmstadt.de Computer Science Department Darmstadt University of Technology