Bug 244219 - [4.4.92] Lokalize: Cannot merge plural messages to /branches
Summary: [4.4.92] Lokalize: Cannot merge plural messages to /branches
Status: RESOLVED FIXED
Alias: None
Product: lokalize
Classification: Applications
Component: general (other bugs)
Version First Reported In: unspecified
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Nick Shaforostoff
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-07-11 14:27 UTC by Johannes Obermayr
Modified: 2012-05-31 06:14 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (9.46 KB, text/plain)
2012-05-31 06:14 UTC, Dimitrios Glentadakis
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Johannes Obermayr 2010-07-11 14:27:42 UTC
Application: lokalize (1.1)
KDE Platform Version: 4.4.92 (KDE 4.4.92 (KDE 4.5 RC2)) "release 2"
Qt Version: 4.6.3
Operating System: Linux 2.6.34-12-default i686
Distribution: "openSUSE 11.3 (i586)"

-- Information about the crash:
1. Configure KDE /trunk and /branches (as branch folder)
2. Open a file with plural messages
3. "Copy to merging source" the "Plural Form 1" message
4. Choose tab "Plural Form 2"
5. "Copy to merging source" the "Plural Form 2" message
6. Lokalize crashes

I can reproduce it on 2 systems (i586 and x86_64).

The crash can be reproduced every time.

-- Backtrace:
Application: Lokalize (lokalize), signal: Segmentation fault
[Current thread is 1 (Thread 0xb4ec2710 (LWP 6909))]

Thread 3 (Thread 0xb254ab70 (LWP 6912)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb5637125 in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S:122
#2  0xb5e0624c in __pthread_cond_wait (cond=0x8259850, mutex=0x8259838) at forward.c:139
#3  0xb602d710 in wait (this=0x8259778, mutex=0x8259500, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  QWaitCondition::wait (this=0x8259778, mutex=0x8259500, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#5  0xb70c6c9a in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x8259760, th=0x8418200) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WeaverImpl.cpp:365
#6  0xb70c961b in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x8259458, th=0x8418200) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WorkingHardState.cpp:80
#7  0xb70c685a in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x8259760, th=0x8418200) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WeaverImpl.cpp:356
#8  0xb70c9714 in ThreadWeaver::WorkingHardState::applyForWork (this=0x8259458, th=0x8418200) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WorkingHardState.cpp:71
#9  0xb70c6773 in ThreadWeaver::WeaverImpl::applyForWork (this=0x8259760, th=0x8418200, previous=0x8f99e20) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WeaverImpl.cpp:351
#10 0xb70c8284 in ThreadWeaver::ThreadRunHelper::run (this=0xb254a314, parent=0x8259760, th=0x8418200) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/Thread.cpp:87
#11 0xb70c833a in ThreadWeaver::Thread::run (this=0x8418200) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/Thread.cpp:142
#12 0xb602d04f in QThreadPrivate::start (arg=0x8418200) at thread/qthread_unix.cpp:248
#13 0xb5632b25 in start_thread (arg=0xb254ab70) at pthread_create.c:297
#14 0xb5df846e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 2 (Thread 0xb1c98b70 (LWP 6914)):
#0  0xffffe430 in __kernel_vsyscall ()
#1  0xb5637125 in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S:122
#2  0xb5e0624c in __pthread_cond_wait (cond=0x825c9e0, mutex=0x825c9c8) at forward.c:139
#3  0xb602d710 in wait (this=0x825c8b8, mutex=0x82518e8, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#4  QWaitCondition::wait (this=0x825c8b8, mutex=0x82518e8, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#5  0xb70c6c9a in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned (this=0x825c8a0, th=0x8195530) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WeaverImpl.cpp:365
#6  0xb70c961b in ThreadWeaver::WorkingHardState::waitForAvailableJob (this=0x8251898, th=0x8195530) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WorkingHardState.cpp:80
#7  0xb70c685a in ThreadWeaver::WeaverImpl::waitForAvailableJob (this=0x825c8a0, th=0x8195530) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WeaverImpl.cpp:356
#8  0xb70c9714 in ThreadWeaver::WorkingHardState::applyForWork (this=0x8251898, th=0x8195530) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WorkingHardState.cpp:71
#9  0xb70c6773 in ThreadWeaver::WeaverImpl::applyForWork (this=0x825c8a0, th=0x8195530, previous=0x8dd0600) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/WeaverImpl.cpp:351
#10 0xb70c8284 in ThreadWeaver::ThreadRunHelper::run (this=0xb1c98314, parent=0x825c8a0, th=0x8195530) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/Thread.cpp:87
#11 0xb70c833a in ThreadWeaver::Thread::run (this=0x8195530) at /usr/src/debug/kdelibs-4.4.92/threadweaver/Weaver/Thread.cpp:142
#12 0xb602d04f in QThreadPrivate::start (arg=0x8195530) at thread/qthread_unix.cpp:248
#13 0xb5632b25 in start_thread (arg=0xb1c98b70) at pthread_create.c:297
#14 0xb5df846e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb4ec2710 (LWP 6909)):
[KCrash Handler]
#7  deref (this=0x8f7b48c, other=@0xbfdc6c9c) at ../../src/corelib/arch/qatomic_i386.h:132
#8  QString::operator= (this=0x8f7b48c, other=@0xbfdc6c9c) at tools/qstring.cpp:1281
#9  0x080b8da8 in MergeCatalog::copyFromBaseCatalog (this=0x8f610d8, pos=..., options=1) at /usr/src/debug/kdesdk-4.4.92/lokalize/src/mergemode/mergecatalog.cpp:61
#10 0x080bb16f in copyFromBaseCatalog (this=0x8e37c20) at /usr/src/debug/kdesdk-4.4.92/lokalize/src/mergemode/mergecatalog.h:106
#11 MergeView::mergeBack (this=0x8e37c20) at /usr/src/debug/kdesdk-4.4.92/lokalize/src/mergemode/mergeview.cpp:317
#12 0x080bc38c in MergeView::qt_metacall (this=0x8e37c20, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0xbfdc6e08)
    at /usr/src/debug/kdesdk-4.4.92/build/lokalize/src/mergeview.moc:108
#13 0xb612cefd in QMetaObject::metacall (object=0x8e37c20, cl=QMetaObject::InvokeMetaMethod, idx=47, argv=0xbfdc6e08) at kernel/qmetaobject.cpp:237
#14 0xb613bfe8 in QMetaObject::activate (sender=0x8eb3498, m=0xb6cacd28, local_signal_index=1, argv=0xbfdc6e08) at kernel/qobject.cpp:3295
#15 0xb6376a0d in QAction::triggered (this=0x8eb3498, _t1=false) at .moc/release-shared/moc_qaction.cpp:263
#16 0xb6376cab in QAction::activate (this=0x8eb3498, event=QAction::Trigger) at kernel/qaction.cpp:1255
#17 0xb6810fb5 in QMenuPrivate::activateCausedStack (this=0x9097340, causedStack=..., action=0x8eb3498, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1002
#18 0xb6817c87 in QMenuPrivate::activateAction (this=0x9097340, action=0x8eb3498, action_e=QAction::Trigger, self=true) at widgets/qmenu.cpp:1094
#19 0xb6819058 in QMenu::mouseReleaseEvent (this=0xbfdc7df8, e=0xbfdc75d4) at widgets/qmenu.cpp:2312
#20 0xb63d6f00 in QWidget::event (this=0xbfdc7df8, event=0xbfdc75d4) at kernel/qwidget.cpp:8044
#21 0xb68190dc in QMenu::event (this=0xbfdc7df8, e=0xbfdc75d4) at widgets/qmenu.cpp:2421
#22 0xb637dc64 in QApplicationPrivate::notify_helper (this=0x818f540, receiver=0xbfdc7df8, e=0xbfdc75d4) at kernel/qapplication.cpp:4302
#23 0xb6386750 in QApplication::notify (this=0xbfdc72ec, receiver=0xbfdc7df8, e=0xbfdc75d4) at kernel/qapplication.cpp:3867
#24 0xb729d011 in KApplication::notify (this=0xbfdc8c70, receiver=0xbfdc7df8, event=0xbfdc75d4) at /usr/src/debug/kdelibs-4.4.92/kdeui/kernel/kapplication.cpp:309
#25 0xb6126e0e in QCoreApplication::notifyInternal (this=0xbfdc8c70, receiver=0xbfdc7df8, event=0xbfdc75d4) at kernel/qcoreapplication.cpp:726
#26 0xb637ec4c in sendSpontaneousEvent (receiver=0xbfdc7df8, event=0xbfdc75d4, alienWidget=0x0, nativeWidget=0xbfdc7df8, buttonDown=0xb6cc8078, lastMouseReceiver=..., spontaneous=true)
    at ../../src/corelib/kernel/qcoreapplication.h:218
#27 QApplicationPrivate::sendMouseEvent (receiver=0xbfdc7df8, event=0xbfdc75d4, alienWidget=0x0, nativeWidget=0xbfdc7df8, buttonDown=0xb6cc8078, lastMouseReceiver=..., spontaneous=true)
    at kernel/qapplication.cpp:2965
#28 0xb6406766 in QETWidget::translateMouseEvent (this=0xbfdc7df8, event=0xbfdc7aec) at kernel/qapplication_x11.cpp:4314
#29 0xb640573e in QApplication::x11ProcessEvent (this=0xbfdc8c70, event=0xbfdc7aec) at kernel/qapplication_x11.cpp:3391
#30 0xb642e570 in x11EventSourceDispatch (s=0x81927f0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#31 0xb542db49 in g_main_dispatch (context=0x8191898) at gmain.c:1960
#32 IA__g_main_context_dispatch (context=0x8191898) at gmain.c:2513
#33 0xb542e350 in g_main_context_iterate (context=0x8191898, block=1, dispatch=1, self=0x818f6d8) at gmain.c:2591
#34 0xb542e60e in IA__g_main_context_iteration (context=0x8191898, may_block=1) at gmain.c:2654
#35 0xb6152d4b in QEventDispatcherGlib::processEvents (this=0x818f520, flags=...) at kernel/qeventdispatcher_glib.cpp:412
#36 0xb642e19a in QGuiEventDispatcherGlib::processEvents (this=0x818f520, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#37 0xb612611d in QEventLoop::processEvents (this=0xbfdc7da0, flags=...) at kernel/qeventloop.cpp:149
#38 0xb6126319 in QEventLoop::exec (this=0xbfdc7da0, flags=...) at kernel/qeventloop.cpp:201
#39 0xb6814ed7 in QMenu::exec (this=0xbfdc7df8, p=..., action=0x0) at widgets/qmenu.cpp:2063
#40 0xb6814fd8 in QMenu::exec (actions=..., pos=..., at=0x0, parent=0x8e37c20) at widgets/qmenu.cpp:2099
#41 0xb63d7d2b in QWidget::event (this=0x8e37c20, event=0xbfdc81b4) at kernel/qwidget.cpp:8220
#42 0x080bbf5e in MergeView::event (this=0x8e37c20, event=0xbfdc81b4) at /usr/src/debug/kdesdk-4.4.92/lokalize/src/mergemode/mergeview.cpp:357
#43 0xb637dc64 in QApplicationPrivate::notify_helper (this=0x818f540, receiver=0x8e37c20, e=0xbfdc81b4) at kernel/qapplication.cpp:4302
#44 0xb6385fa8 in QApplication::notify (this=0x8e37c20, receiver=0x8e3c678, e=0xbfdc842c) at kernel/qapplication.cpp:3946
#45 0xb729d011 in KApplication::notify (this=0xbfdc8c70, receiver=0x8e3c678, event=0xbfdc842c) at /usr/src/debug/kdelibs-4.4.92/kdeui/kernel/kapplication.cpp:309
#46 0xb6126e0e in QCoreApplication::notifyInternal (this=0xbfdc8c70, receiver=0x8e3c678, event=0xbfdc842c) at kernel/qcoreapplication.cpp:726
#47 0xb6406609 in sendSpontaneousEvent (this=0x8ddc8f8, event=0xbfdc891c) at ../../src/corelib/kernel/qcoreapplication.h:218
#48 QETWidget::translateMouseEvent (this=0x8ddc8f8, event=0xbfdc891c) at kernel/qapplication_x11.cpp:4385
#49 0xb640573e in QApplication::x11ProcessEvent (this=0xbfdc8c70, event=0xbfdc891c) at kernel/qapplication_x11.cpp:3391
#50 0xb642e570 in x11EventSourceDispatch (s=0x81927f0, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#51 0xb542db49 in g_main_dispatch (context=0x8191898) at gmain.c:1960
#52 IA__g_main_context_dispatch (context=0x8191898) at gmain.c:2513
#53 0xb542e350 in g_main_context_iterate (context=0x8191898, block=1, dispatch=1, self=0x818f6d8) at gmain.c:2591
#54 0xb542e60e in IA__g_main_context_iteration (context=0x8191898, may_block=1) at gmain.c:2654
#55 0xb6152d4b in QEventDispatcherGlib::processEvents (this=0x818f520, flags=...) at kernel/qeventdispatcher_glib.cpp:412
#56 0xb642e19a in QGuiEventDispatcherGlib::processEvents (this=0x818f520, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#57 0xb612611d in QEventLoop::processEvents (this=0xbfdc8bd4, flags=...) at kernel/qeventloop.cpp:149
#58 0xb6126319 in QEventLoop::exec (this=0xbfdc8bd4, flags=...) at kernel/qeventloop.cpp:201
#59 0xb612ac70 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1003
#60 0xb637b164 in QApplication::exec () at kernel/qapplication.cpp:3581
#61 0x080752f9 in main (argc=1, argv=0x2) at /usr/src/debug/kdesdk-4.4.92/lokalize/src/main.cpp:118

Reported using DrKonqi
Comment 1 Nick Shaforostoff 2010-11-26 17:57:19 UTC
sorry for not responding for so long. can you provide me the two files from your branch?
Comment 2 Johannes Obermayr 2010-11-29 22:59:28 UTC
Seems to be fixed in KDE 4.5.80 / Qt 4.7.1
Comment 3 Dimitrios Glentadakis 2012-05-31 06:14:44 UTC
Created attachment 71457 [details]
New crash information added by DrKonqi

lokalize (1.4) on KDE Platform 4.8.2 (4.8.2) using Qt 4.8.1

When i want to synchronize the trunk with the branch in a plural string , lokalize crashes

-- Backtrace (Reduced):
#7  QString::operator= (this=0x5b0c7f8, other=...) at tools/qstring.cpp:1411
#8  0x000000000047d4ef in MergeCatalog::copyFromBaseCatalog (this=0x59dbd60, pos=..., options=<optimized out>) at /usr/src/debug/kdesdk-4.8.2/lokalize/src/mergemode/mergecatalog.cpp:62
#9  0x000000000047fb49 in copyFromBaseCatalog (pos=..., this=<optimized out>) at /usr/src/debug/kdesdk-4.8.2/lokalize/src/mergemode/mergecatalog.h:106
#10 MergeView::mergeBack (this=0x595f6f0) at /usr/src/debug/kdesdk-4.8.2/lokalize/src/mergemode/mergeview.cpp:324
#11 0x0000000000480925 in qt_static_metacall (_a=<optimized out>, _id=<optimized out>, _o=0x595f6f0, _c=<optimized out>) at /usr/src/debug/kdesdk-4.8.2/build/lokalize/src/mergeview.moc:85