On Sat, May 25, 2019 at 10:45:48AM -0500, [email protected] wrote:

> >Synopsis:    makeinfo dumps core on amdref.info when outputting docbook
> >Category:    user
> >Environment:
>       ***also tested on 6.5-STABLE, same problem occurs there***
>       System      : OpenBSD 6.4
>       Details     : OpenBSD 6.4 (GENERIC) #6: Sat Jan 26 19:51:53 CET 2019
>                        
> [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC
> 
>       Architecture: OpenBSD.amd64
>       Machine     : amd64
> >Description:
>       When using makeinfo(1) to convert a Texinfo file to Docbook, instead of
>       performing the conversion, makeinfo dumps core instead.
>       Error shown here with debugger attached:
> 
>       (gdb) run
>       Starting program: /usr/bin/makeinfo -v --force --docbook amdref.texinfo
>       (no debugging symbols found)
>       makeinfo (GNU texinfo) 4.8
>       Making XML file `/home/athompso/amdref.xml' from `amdref.texinfo'.
> 
>       Program received signal SIGSEGV, Segmentation fault.
>       0x000010db1bc010eb in cm_no_op () from /usr/bin/makeinfo
>       Current language:  auto; currently minimal
> 
> >How-To-Repeat:
>       Run "makeinfo --docbook" on amdref.texinfo from 
> /usr/src/usr.sbin/amd/doc/amdref.texinfo.
>       Crashes every time, pretty much instantly, leaving amdref.xml as a 
> 0-byte file.
> >Fix:
>       No known fix.
> 
> 
> dmesg:
> OpenBSD 6.4 (GENERIC) #6: Sat Jan 26 19:51:53 CET 2019
>     [email protected]:/usr/src/sys/arch/amd64/compile/GENERIC
> real mem = 2080227328 (1983MB)
> avail mem = 2008084480 (1915MB)
> mpath0 at root
> scsibus0 at mpath0: 256 targets
> mainbus0 at root
> bios0 at mainbus0: SMBIOS rev. 2.8 @ 0xf68b0 (9 entries)
> bios0: vendor SeaBIOS version "2:1.10.2-58953eb7" date 04/01/2014
> bios0: OpenStack Foundation OpenStack Nova
> acpi0 at bios0: rev 0
> acpi0: sleep states S3 S4 S5
> acpi0: tables DSDT FACP SSDT APIC
> acpi0: wakeup devices
> acpitimer0 at acpi0: 3579545 Hz, 24 bits
> acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
> cpu0 at mainbus0: apid 0 (boot processor)
> cpu0: Intel Core Processor (Haswell, no TSX), 2400.38 MHz, 06-3c-01
> cpu0: 
> FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,SSE3,PCLMUL,VMX,SSSE3,FMA3,CX16,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,HV,NXE,RDTSCP,LONG,LAHF,ABM,FSGSBASE,BMI1,AVX2,SMEP,BMI2,ERMS,INVPCID,ARAT,XSAVEOPT,MELTDOWN
> cpu0: 64KB 64b/line 2-way I-cache, 64KB 64b/line 2-way D-cache, 512KB 
> 64b/line 16-way L2 cache
> cpu0: ITLB 255 4KB entries direct-mapped, 255 4MB entries direct-mapped
> cpu0: DTLB 255 4KB entries direct-mapped, 255 4MB entries direct-mapped
> cpu0: smt 0, core 0, package 0
> mtrr: Pentium Pro MTRR support, 8 var ranges, 88 fixed ranges
> cpu0: apic clock running at 1000MHz
> ioapic0 at mainbus0: apid 0 pa 0xfec00000, version 11, 24 pins
> acpiprt0 at acpi0: bus 0 (PCI0)
> acpicpu0 at acpi0: C1(@1 halt!)
> "ACPI0006" at acpi0 not configured
> acpicmos0 at acpi0
> "PNP0A06" at acpi0 not configured
> "PNP0A06" at acpi0 not configured
> "PNP0A06" at acpi0 not configured
> pvbus0 at mainbus0: KVM
> pci0 at mainbus0 bus 0
> pchb0 at pci0 dev 0 function 0 "Intel 82441FX" rev 0x02
> pcib0 at pci0 dev 1 function 0 "Intel 82371SB ISA" rev 0x00
> pciide0 at pci0 dev 1 function 1 "Intel 82371SB IDE" rev 0x00: DMA, channel 0 
> wired to compatibility, channel 1 wired to compatibility
> pciide0: channel 0 disabled (no drives)
> pciide0: channel 1 disabled (no drives)
> uhci0 at pci0 dev 1 function 2 "Intel 82371SB USB" rev 0x01: apic 0 int 11
> piixpm0 at pci0 dev 1 function 3 "Intel 82371AB Power" rev 0x03: apic 0 int 9
> iic0 at piixpm0
> vga1 at pci0 dev 2 function 0 "Cirrus Logic CL-GD5446" rev 0x00
> wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
> wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
> virtio0 at pci0 dev 3 function 0 "Qumranet Virtio Network" rev 0x00
> vio0 at virtio0: address fa:16:3e:b7:5f:8b
> virtio0: msix shared
> virtio1 at pci0 dev 4 function 0 "Qumranet Virtio SCSI" rev 0x00
> vioscsi0 at virtio1: qsize 128
> scsibus1 at vioscsi0: 255 targets
> sd0 at scsibus1 targ 0 lun 0: <QEMU, QEMU HARDDISK, 2.5+> SCSI3 0/direct fixed
> sd0: 10240MB, 512 bytes/sector, 20971520 sectors, thin
> sd1 at scsibus1 targ 0 lun 1: <QEMU, QEMU HARDDISK, 2.5+> SCSI3 0/direct 
> fixed serial.QEMU_QEMU_HARDDISK_5795b502-4727-4738-b
> sd1: 11264MB, 512 bytes/sector, 23068672 sectors, thin
> virtio1: msix shared
> virtio2 at pci0 dev 5 function 0 "Qumranet Virtio Memory" rev 0x00
> viomb0 at virtio2
> virtio2: apic 0 int 10
> isa0 at pcib0
> isadma0 at isa0
> fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
> com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
> com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
> pckbc0 at isa0 port 0x60/5 irq 1 irq 12
> pckbd0 at pckbc0 (kbd slot)
> wskbd0 at pckbd0: console keyboard, using wsdisplay0
> pms0 at pckbc0 (aux slot)
> wsmouse0 at pms0 mux 0
> pcppi0 at isa0 port 0x61
> spkr0 at pcppi0
> usb0 at uhci0: USB revision 1.0
> uhub0 at usb0 configuration 1 interface 0 "Intel UHCI root hub" rev 1.00/1.00 
> addr 1
> vmm0 at mainbus0: VMX/EPT (using slow L1TF mitigation)
> uhidev0 at uhub0 port 1 configuration 1 interface 0 "QEMU QEMU USB Tablet" 
> rev 2.00/0.00 addr 2
> uhidev0: iclass 3/0
> ums0 at uhidev0: 3 buttons, Z dir
> wsmouse1 at ums0 mux 0
> vscsi0 at root
> scsibus2 at vscsi0: 256 targets
> softraid0 at root
> scsibus3 at softraid0: 256 targets
> root on sd0a (b0ee8ca88a9ae801.a) swap on sd0b dump on sd0b
> fd0 at fdc0 drive 1: density unknown
> 
> usbdevs:
> Controller /dev/usb0:
> addr 01: 8086:0000 Intel, UHCI root hub
>        full speed, self powered, config 1, rev 1.00
>        driver: uhub0
> addr 02: 0627:0001 QEMU, QEMU USB Tablet
>        full speed, power 100 mA, config 1, rev 0.00, iSerialNumber 42
>        driver: uhidev0
> 

Try this.

        -Otto

Index: makeinfo/cmds.c
===================================================================
RCS file: /cvs/src/gnu/usr.bin/texinfo/makeinfo/cmds.c,v
retrieving revision 1.3
diff -u -p -r1.3 cmds.c
--- makeinfo/cmds.c     17 Jul 2006 16:12:36 -0000      1.3
+++ makeinfo/cmds.c     25 May 2019 19:52:47 -0000
@@ -624,6 +624,7 @@ cm_comment (void)
           /* Use insert for HTML, and XML when indentation is enabled.
              For Docbook, use add_char.  */
           if (xml && xml_indentation_increment > 0
+              && output_paragraph_offset > 0
               && output_paragraph[output_paragraph_offset-1] != '\n')
             insert ('\n');
 
Index: makeinfo/xml.c
===================================================================
RCS file: /cvs/src/gnu/usr.bin/texinfo/makeinfo/xml.c,v
retrieving revision 1.2
diff -u -p -r1.2 xml.c
--- makeinfo/xml.c      8 Oct 2008 07:09:37 -0000       1.2
+++ makeinfo/xml.c      25 May 2019 19:52:47 -0000
@@ -1845,7 +1845,8 @@ xml_begin_index (void)
       if (xml_index_titles)
         {
           /* Remove the final > */
-          output_paragraph_offset--;
+          if (output_paragraph_offset)
+           output_paragraph_offset--;
           /* and put  ID="node-name"><TITLE>Title</TITLE> */
           insert_string (xml_index_titles->title);
           free (xml_index_titles->title);

Reply via email to