When I try to insert Floating Image, lyx crashes with message "lyx: SIGSEGV signal caught"

Bug #560715 reported by fossil
40
This bug affects 8 people
Affects Status Importance Assigned to Milestone
lyx (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Binary package hint: lyx

1.
Description: Ubuntu lucid (development branch)
Release: 10.04
2.
1.6.5-1ubuntu1
3.
I try to insert floating image.
Вставить/Плавающий объект/Обтекаемый плавающий рисунок
or
Вставить/Плавающий объект/Изображение
Menu/Insert/Floating object/Image
4.
lyx crashes with the message:

lyx: SIGSEGV signal caught
Sorry, you have found a bug in LyX. Please read the bug-reporting instructions in Help->Introduction and send us a bug report, if necessary. Thanks !
Bye.
Аварийный останов (core dumped)

Tags: lyx
Revision history for this message
chca (chca) wrote :

- Distribution: Ubuntu lucid (stable)
- same package version

I experienced exactly the same issue, but it only seems to happen when the "Outline" panel is open. I have reproduced this several times with an empty document.

Revision history for this message
chca (chca) wrote :

Probably it has to do with this bug:
http://www.lyx.org/trac/ticket/6522

There is also a note in Lyx 1.6.6 changelog:

"Fix TOC-related crashes on Qt 4.6.x (bug 6522)."

A manually compiled version of Lyx 1.6.6 does not have this bug.

Revision history for this message
Lorien (mcs) wrote :

The 1.6.5 released in Ubuntu is sadly almost unsuable. It always crashes when inserting any floating objects (tables, images). The backspace bug mentioned in the above link is annoying me, too. As long as the LyX version bundled with 10.04 won't be fixed, I will use a self-built one.

Revision history for this message
ronan mchugh (mchugh-r) wrote :

hi, this also affects me. Also using Lyx 1.6.5 on Ubuntu 10.04. It occurs whether the Outline panel is open or closed. I do not have the technical skills to compile my own version of Lyx, so I would greatly appreciate any advice in terms of work arounds or whatever as my masters thesis is due in 2 weeks. Is it possible simply to delete Lyx and re-install an earlier version?

Revision history for this message
chca (chca) wrote :

Installing packages from previous ubuntu releases might be difficult as you will probably need older versions of some dependencies too when installing them with dpkg. Of course, you could try extracting the package somewhere with dpkg -x. But I would recommend compiling it from source - it's not that difficult in case of lyx. Just download the source from www.lyx.org, extract it somewhere, install the dependencies for build (look into the file "INSTALL", it contains some hints; you will definately need "g++", "qt4-dev-tools" and "libqt4-dev"), execute "./configure" and then "make" in terminal. After compiling, you can run lyx in place with "src/lyx" in the source directory without installing.

Revision history for this message
b (ben-ekran) wrote :
Download full text (8.7 KiB)

I'm getting this same crashing issue, but the backtrace does not match that of bug 6522. It seems to happen to me on inserting a float, but not always. Here is my backtrace:

Program received signal SIGSEGV, Segmentation fault.
0x0819c641 in lyx::TextMetrics::cursorY (this=0x8c5f91c, sl=...,
    boundary=false) at ../../src/TextMetrics.cpp:1776
1776 ../../src/TextMetrics.cpp: No such file or directory.
 in ../../src/TextMetrics.cpp
(gdb) bt
#0 0x0819c641 in lyx::TextMetrics::cursorY (this=0x8c5f91c, sl=...,
    boundary=false) at ../../src/TextMetrics.cpp:1776
#1 0x08339635 in lyx::InsetText::cursorPos (this=0x8c5d478, bv=..., sl=...,
    boundary=false, x=@0xbfffc28c, y=@0xbfffc288)
    at ../../src/insets/InsetText.cpp:364
#2 0x082b16c9 in lyx::InsetCollapsable::cursorPos (this=0x8c5d478, bv=...,
    sl=..., boundary=<value optimized out>, x=@0xbfffc28c, y=@0xbfffc288)
    at ../../src/insets/InsetCollapsable.cpp:415
#3 0x081cbd81 in lyx::BufferView::coordOffset (this=0x8b4a150, dit=...,
    boundary=false) at ../../src/BufferView.cpp:2210
#4 0x081cca66 in lyx::BufferView::getPos (this=0x8b4a150, dit=...,
    boundary=16) at ../../src/BufferView.cpp:2294
#5 0x081ccb36 in lyx::BufferView::cursorPosAndHeight (this=0x8b4a150, p=...,
    h=@0xbfffc3bc) at ../../src/BufferView.cpp:2317
#6 0x0838f802 in lyx::frontend::GuiWorkArea::showCursor (this=0x8b47ec8)
    at ../../../../src/frontends/qt4/GuiWorkArea.cpp:531
#7 0x08390212 in lyx::frontend::GuiWorkArea::startBlinkingCursor (
    this=0x8b47ec8) at ../../../../src/frontends/qt4/GuiWorkArea.cpp:367
#8 0x08390288 in lyx::frontend::GuiWorkArea::focusInEvent (this=0x8b47ec8,
    e=0xbfffcad0) at ../../../../src/frontends/qt4/GuiWorkArea.cpp:674
#9 0x00470901 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#10 0x0086cfd3 in QFrame::event(QEvent*) () from /usr/lib/libQtGui.so.4
#11 0x00907d97 in QAbstractScrollArea::event(QEvent*) ()
---Type <return> to continue, or q <return> to quit---
   from /usr/lib/libQtGui.so.4
#12 0x0838f53f in lyx::frontend::GuiWorkArea::event (this=0x8b47ec8,
    e=0xbfffcad0) at ../../../../src/frontends/qt4/GuiWorkArea.cpp:625
#13 0x004124dc in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#14 0x004190f9 in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#15 0x08359008 in lyx::frontend::GuiApplication::notify (this=0x86fe390,
    receiver=0x8b47ec8, event=0xbfffcad0)
    at ../../../../src/frontends/qt4/GuiApplication.cpp:1287
#16 0x00ec1a3b in QCoreApplication::notifyInternal(QObject*, QEvent*) ()
   from /usr/lib/libQtCore.so.4
#17 0x0042193e in QCoreApplication::sendEvent(QObject*, QEvent*) ()
   from /usr/lib/libQtGui.so.4
#18 0x00417db6 in QApplicationPrivate::setFocusWidget(QWidget*, Qt::FocusReason) () from /usr/lib/libQtGui.so.4
#19 0x0046b705 in QWidget::setFocus(Qt::FocusReason) ()
   from /usr/lib/libQtGui.so.4
#20 0x0837592f in QWidget::setFocus (this=0x8933e70)
    at /usr/include/qt4/QtGui/qwidget.h:416
#21 lyx::frontend::GuiView::setFocus (this=0x8933e70)
    at ../../../../src/frontends/qt4/GuiView.cpp:504
#22 0x08500e6f in lyx::frontend::TocWidget::on_typeC...

Read more...

Changed in lyx (Ubuntu):
status: New → Confirmed
Revision history for this message
b (ben-ekran) wrote :

Actually looks like my problem better matches Bug #541787

Revision history for this message
stefaanlippens (stefaan-lippens) wrote :

Same problem here,
I can confirm that closing the outline panel fixes it.
Actually, closing the outline panel is not enough for me, I first have to start a new document or open an existing one, before I can insert a float without crash. Completely restarting Lyx after closing the outline panel also works of course.

Thanks for the workaround, anyway

Revision history for this message
b (ben-ekran) wrote :

I confirm this bug.

Having the outline panel open or closed does not make a difference here:
1. open lyx (terminal)
2. new document (Control-N)
3. close outline panel
4. Insert-float-figure
segfault.

Ah, if the outline panel was *ever* open during a lyx session inserting floats is broken, but not if you never have outline open:
1. open lyx
2. close the outline panel
3. close lyx
4. open lyx
5. new document
6. insert float (works!!)
7. open outline panel
8. close outline panel
9. insert float
segfault.

Indeed this needs to be fixed for lucid LTS.

Revision history for this message
Jean-Marc Lasgouttes (jmarc) wrote :

I cannot reproduce this bug wih LyX 2.2.3. Does anyone still see it?

Revision history for this message
b (ben-ekran) wrote :

Seems resolved in 2.2.3

Revision history for this message
Jean-Marc Lasgouttes (jmarc) wrote :

Thanks for checking

Changed in lyx (Ubuntu):
status: Confirmed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.