Jean-Marc Lasgouttes wrote:
"Stephan" == Stephan Witt <[EMAIL PROTECTED]> writes:


Stephan> as promised yesterday I did some testing today.

Thanks.

Stephan> With the patch the unsaved changes remains unsaved. Without
Stephan> the patch I was asked to save the changes. So far seems all
Stephan> well,
Is this really what we want??

Yes, I meant to say: the behaviour is ok without the patch. The program
should ask for saving the changes. And it shouldn't terminate.

Stephan> but after playing a while with gnome-save-session I now have
Stephan> the same behaviour as in Paris, the qt-library is unable to
Stephan> open the question box anymore! Even worse, I have to kill the
Stephan> lyx process to be able to do any work. All gnome applications
Stephan> are locked. It seems this is caused by the running
Stephan> gnome-save-session which is waiting for lyx returning from
Stephan> user response - what never happens.

From reading the Qt doc about QSession, I do not see clearly how it is
supposed to work...

Last weekend I did some further investigation.

1. Checking the behaviour of kwrite

it opens a question box to save the changes when it gets the focus...
Hm... when it is iconized or on another desktop it doesn't ask?
Really strange.

2. Checking the patched lyx

it blocks the process of saving sessions completely. Really bad.

The backtrace when interrupted from inside the debugger looks
like the following:

Program received signal SIGINT, Interrupt.
0xffffe410 in ?? ()
No breakpoints or watchpoints.
#0  0xffffe410 in ?? ()
#1  0xbfffd648 in ?? ()
#2  0x085193f4 in ?? ()
#3  0x08519270 in ?? ()
#4  0x40b4af9d in ___newselect_nocancel () from /lib/tls/libc.so.6
#5  0x401dee8a in QEventLoop::processEvents () from 
/usr/lib/qt3/lib/libqt-mt.so.3
#6  0x40249e51 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3
#7  0x402338bf in QApplication::enter_loop () from 
/usr/lib/qt3/lib/libqt-mt.so.3
#8  0x40f99bef in DCOPClient::callInternal () from /opt/kde3/lib/libDCOP.so.4
#9  0x40f99edc in DCOPClient::callInternal () from /opt/kde3/lib/libDCOP.so.4
#10 0x40f9a137 in DCOPClient::call () from /opt/kde3/lib/libDCOP.so.4
#11 0x40f9a198 in DCOPClient::call () from /opt/kde3/lib/libDCOP.so.4
#12 0x40f5f044 in initializeIntegration () from /opt/kde3/lib/kde3/plugins/integration/libqtkde.so #13 0x401bc86f in QKDEIntegration::initLibrary () from /usr/lib/qt3/lib/libqt-mt.so.3
#14 0x401bc8d5 in QKDEIntegration::enabled () from 
/usr/lib/qt3/lib/libqt-mt.so.3
#15 0x40451e95 in QMessageBox::information () from 
/usr/lib/qt3/lib/libqt-mt.so.3
#16 0x08216e2f in prompt_pimpl ([EMAIL PROTECTED], [EMAIL PROTECTED], default_button=0, cancel_butto
n=2, [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]) at 
Alert_pimpl.C:44
#17 0x0820db82 in Alert::prompt ([EMAIL PROTECTED], [EMAIL PROTECTED], default_button=0, escape_bu
tton=2, [EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED]) at Alert.C:44
#18 0x080bcad9 in BufferList::quitWriteBuffer (this=0x83f0ac4, buf=0x853e648) at bufferlist.C:83
#19 0x080bcca6 in BufferList::quitWriteAll (this=0x83f0ac4) at bufferlist.C:122
#20 0x08251e7e in LQApplication::commitData (this=0x83f4320, [EMAIL PROTECTED]) at lyx_gui.C:151 #21 0x401bef8c in QSessionManager::QSessionManager () from /usr/lib/qt3/lib/libqt-mt.so.3 #22 0x401bf061 in QSessionManager::QSessionManager () from /usr/lib/qt3/lib/libqt-mt.so.3
#23 0x4094ccc1 in _SmcProcessMessage () from /usr/X11R6/lib/libSM.so.6
#24 0x4095b26e in IceProcessMessages () from /usr/X11R6/lib/libICE.so.6
#25 0x401bf3b4 in QSmSocketReceiver::socketActivated () from /usr/lib/qt3/lib/libqt-mt.so.3 #26 0x401bf425 in QSmSocketReceiver::qt_invoke () from /usr/lib/qt3/lib/libqt-mt.so.3
#27 0x40294e7e in QObject::activate_signal () from 
/usr/lib/qt3/lib/libqt-mt.so.3
#28 0x402954ad in QObject::activate_signal () from 
/usr/lib/qt3/lib/libqt-mt.so.3
#29 0x405e91f0 in QSocketNotifier::activated () from 
/usr/lib/qt3/lib/libqt-mt.so.3
#30 0x402b4a70 in QSocketNotifier::event () from /usr/lib/qt3/lib/libqt-mt.so.3
#31 0x40231d5f in QApplication::internalNotify () from /usr/lib/qt3/lib/libqt-mt.so.3
#32 0x40233a83 in QApplication::notify () from /usr/lib/qt3/lib/libqt-mt.so.3
#33 0x40225e76 in QEventLoop::activateSocketNotifiers () from /usr/lib/qt3/lib/libqt-mt.so.3
#34 0x401df242 in QEventLoop::processEvents () from 
/usr/lib/qt3/lib/libqt-mt.so.3
#35 0x40249e51 in QEventLoop::enterLoop () from /usr/lib/qt3/lib/libqt-mt.so.3
#36 0x40249c96 in QEventLoop::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#37 0x4023394f in QApplication::exec () from /usr/lib/qt3/lib/libqt-mt.so.3
#38 0x082524a0 in lyx_gui::start ([EMAIL PROTECTED], [EMAIL PROTECTED]) at lyx_gui.C:265 #39 0x081051f0 in LyX::priv_exec (this=0x8426ce8, [EMAIL PROTECTED], argv=0xbfffe8f4) at lyx_main.C:28
6
#40 0x08104931 in LyX::exec ([EMAIL PROTECTED], argv=0xbfffe8f4) at 
lyx_main.C:143
#41 0x08064437 in main (argc=1, argv=0xbfffe8f4) at main.C:47



It seems to be another problem with processEvents...


Stephan
----------

Reply via email to