[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#485833: openoffice.org: segfaults on exit: _XFreeExtData - FreeEData.c:39 No such file or directory



Hi Florian,

since it seems you can reproduce this easily it would be nice to get
some more info from gdb, see below.

On Wed, Jun 11, 2008 at 20:16:36 +0200, Florian Kulzer wrote:

> $ gdb /usr/lib/openoffice/program/soffice.bin $(pidof soffice.bin)
> 
> [...]
> 
> (gdb) continue
> Continuing.
> [Thread 0x41ef0950 (LWP 15165) exited]
> [Thread 0x42ef2950 (LWP 15168) exited]
> [Thread 0x408dd950 (LWP 15166) exited]
> 
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x7fba2089e780 (LWP 15163)]
> _XFreeExtData (extension=0x32500000010) at ../../src/FreeEData.c:39
> 39      ../../src/FreeEData.c: No such file or directory.
>         in ../../src/FreeEData.c

    34  int
    35  _XFreeExtData (XExtData *extension)
    36  {
    37          XExtData *temp;
    38          while (extension) {
    39                  if (extension->free_private) 
    40                      (*extension->free_private)(extension);
    41                  else Xfree ((char *)extension->private_data);
    42                  temp = extension->next;
    43                  Xfree ((char *)extension);
    44                  extension = temp;
    45          }
    46          return 0;
    47  }

Looks like the extension structure is fucked up (actually the extension
pointer itself looks strange, so maybe it's the display structure that's
corrupted somehow).  Can you type 'p *extension' at the gdb prompt at
this point?

> Current language:  auto; currently c
> (gdb) backtrace
> #0  _XFreeExtData (extension=0x32500000010) at ../../src/FreeEData.c:39
> #1  0x00007fba1cc9f2a4 in _XFreeDisplayStructure (dpy=0x6a71e0) at ../../src/OpenDis.c:860

   856          if (dpy->pixmap_format) {
   857              register int i;
   858  
   859              for (i = 0; i < dpy->nformats; i++)
   860                _XFreeExtData (dpy->pixmap_format[i].ext_data);
   861              Xfree ((char *)dpy->pixmap_format);
   862              }

Would be nice to print *dpy here.

> #2  0x00007fba1cc8ab72 in XCloseDisplay (dpy=0x6a71e0) at ../../src/ClDisplay.c:82

Also, as a data point maybe you can downgrade libx11-6 to a previous
version and see if the bug still triggers.

Thanks,
Julien



Reply to: