Bug 169910 - plasma crashes when LANG is set to ja_JP.* and a window pops up
Summary: plasma crashes when LANG is set to ja_JP.* and a window pops up
Status: RESOLVED WORKSFORME
Alias: None
Product: kdelibs
Classification: Frameworks and Libraries
Component: general (show other bugs)
Version: 4.1
Platform: FreeBSD Ports FreeBSD
: NOR crash
Target Milestone: ---
Assignee: kdelibs bugs
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2008-08-27 06:15 UTC by Koji Yokota
Modified: 2018-10-27 04:16 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Koji Yokota 2008-08-27 06:15:12 UTC
Version:            (using KDE 4.1.0)
OS:                FreeBSD
Installed from:    FreeBSD Ports

When LANG is set to ja_JP.UTF-8 or ja_JP.eucJP, plasma crashes after certain popup windows appear. This does not happen if LANG is unset.

It seems to happen in several cases, but here are some examples.

   - Try to add a widget on the desktop,
     after a window to select which widget
     to add appears, plasma crashes.

   - Right-click the clock on the menu bar,
     choose settings, then immediately after
     a window appears, plasma crashes.

Below is the backtrace of the latter case in which plasma received signal 11 (SIGSEGV):

アプリケーション: Plasma ワークスペース (plasma), シグナル SIGSEGV
[New Thread 0x2e6b1d00 (LWP 100268)]
[New Thread 0x2e617500 (LWP 100267)]
[New Thread 0x2c701100 (LWP 100186)]
[Switching to Thread 0x2e6b1d00 (LWP 100268)]
[KCrash handler]
#6  0x2a7aa47e in memcpy () from /lib/libc.so.7
#7  0x29867a95 in QString::QString () from /usr/local/lib/qt4/libQtCore.so.4
#8  0x2eab57d0 in KJS::UString::qstring (this=0xbfbfcf50)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdecore/localization/ktranscript.cpp:245
#9  0x2eab87ac in Scriptface::loadf (this=0x2ead1560, exec=0x2ef9500c, 
    fnames=@0xbfbfcffc)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdecore/localization/ktranscript.cpp:826
#10 0x2eab928a in KTranscriptImp::loadModules (this=0x2eebf730, 
    mods=@0x2c758568, error=@0xbfbfd23c)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdecore/localization/ktranscript.cpp:629
#11 0x2eab9e9d in KTranscriptImp::eval (this=0x2eebf730, argv=@0xbfbfd2b0, 
    lang=@0xbfbfd4b4, lscr=@0xbfbfd4ac, msgctxt=@0xbfbfd244, 
    dynctxt=@0x2ef1444c, msgid=@0xbfbfd240, subs=@0x2ef14430, 
    vals=@0x2ef14434, final=@0xbfbfd468, mods=@0x2c758568, error=@0xbfbfd23c, 
    fallback=@0xbfbfd2ca)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdecore/localization/ktranscript.cpp:487
#12 0x28c28bc6 in KLocalizedStringPrivate::resolveInterpolation (
    this=0x2ef14430, strans=@0xbfbfd498, pos=0, lang=@0xbfbfd4b4, 
    lscr=@0xbfbfd4ac, final=@0xbfbfd468, result=@0xbfbfd338, 
    fallback=@0xbfbfd34b)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdecore/localization/klocalizedstring.cpp:681
#13 0x28c2906c in KLocalizedStringPrivate::substituteTranscript (
    this=0x2ef14430, strans=@0xbfbfd498, lang=@0xbfbfd4b4, lscr=@0xbfbfd4ac, 
    final=@0xbfbfd468, fallback=@0xbfbfd4d8)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdecore/localization/klocalizedstring.cpp:509
#14 0x28c29d2a in KLocalizedStringPrivate::toString (this=0x2ef14430, 
    locale=0x2c706b28)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdecore/localization/klocalizedstring.cpp:296
#15 0x28c2a114 in KLocalizedString::toString (this=0xbfbfd538)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdecore/localization/klocalizedstring.cpp:200
#16 0x2869125e in i18n (text=0x288b41a5 "F&ull Screen Mode")
    at klocalizedstring.h:568
#17 0x287c11f1 in internal_stdNames () at kstandardaction_p.h:141
#18 0x287c12e9 in operator-> (this=0x2898976c)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:140
#19 0x287c13d0 in KAcceleratorManagerPrivate::standardName (str=@0xbfbfd6e8)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:145
#20 0x287c14c8 in KAccelString::calculateWeights (this=0xbfbfd6e4, 
    initialWeight=50)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:588
#21 0x287c173f in KAccelString (this=0xbfbfd6e4, input=@0xbfbfd734, 
    initialWeight=50)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:511
#22 0x287c2560 in KAcceleratorManagerPrivate::manageWidget (w=0x2eed7e00, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:387
#23 0x287c271b in KAcceleratorManagerPrivate::traverseChildren (
    widget=0x2eec36e0, item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:278
#24 0x287c25ff in KAcceleratorManagerPrivate::manageWidget (w=0x2eec36e0, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:391
#25 0x287c271b in KAcceleratorManagerPrivate::traverseChildren (
    widget=0x2eec33c0, item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:278
#26 0x287c25ff in KAcceleratorManagerPrivate::manageWidget (w=0x2eec33c0, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:391
#27 0x287c271b in KAcceleratorManagerPrivate::traverseChildren (
    widget=0x2eec33a0, item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:278
#28 0x287c25ff in KAcceleratorManagerPrivate::manageWidget (w=0x2eec33a0, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:391
#29 0x287c271b in KAcceleratorManagerPrivate::traverseChildren (
    widget=0x2ec28b20, item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:278
#30 0x287c25ff in KAcceleratorManagerPrivate::manageWidget (w=0x2ec28b20, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:391
#31 0x287c271b in KAcceleratorManagerPrivate::traverseChildren (
    widget=0x2ec280e0, item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:278
#32 0x287c25ff in KAcceleratorManagerPrivate::manageWidget (w=0x2ec280e0, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:391
#33 0x287c271b in KAcceleratorManagerPrivate::traverseChildren (
    widget=0x2ec28460, item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:278
#34 0x287c25ff in KAcceleratorManagerPrivate::manageWidget (w=0x2ec28460, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:391
#35 0x287c271b in KAcceleratorManagerPrivate::traverseChildren (
    widget=0x2ec28360, item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:278
#36 0x287c25ff in KAcceleratorManagerPrivate::manageWidget (w=0x2ec28360, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:391
#37 0x287c271b in KAcceleratorManagerPrivate::traverseChildren (
    widget=0x2eea57a0, item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:278
#38 0x287c25ff in KAcceleratorManagerPrivate::manageWidget (w=0x2eea57a0, 
    item=0x2c8e1fc0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:391
#39 0x287c28d5 in KAcceleratorManagerPrivate::manage (widget=0x2eea57a0)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kacceleratormanager.cpp:184
#40 0x287c4e97 in KCheckAccelerators::checkAccelerators (this=0x2c855250, 
    automatic=true)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kcheckaccelerators.cpp:193
#41 0x287c532f in KCheckAccelerators::autoCheckSlot (this=0x2c855250)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/shortcuts/kcheckaccelerators.cpp:145
#42 0x287c53df in KCheckAccelerators::qt_metacall (this=0x2c855250, 
    _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbfbfe158)
    at kcheckaccelerators.moc:67
#43 0x2990fa8c in QMetaObject::activate ()
   from /usr/local/lib/qt4/libQtCore.so.4
#44 0x2990fec2 in QMetaObject::activate ()
   from /usr/local/lib/qt4/libQtCore.so.4
#45 0x29948ea7 in QTimer::timeout () from /usr/local/lib/qt4/libQtCore.so.4
#46 0x2991858e in QTimer::timerEvent () from /usr/local/lib/qt4/libQtCore.so.4
#47 0x2990e934 in QObject::event () from /usr/local/lib/qt4/libQtCore.so.4
#48 0x29e772cc in QApplicationPrivate::notify_helper ()
   from /usr/local/lib/qt4/libQtGui.so.4
#49 0x29e7dc8e in QApplication::notify ()
   from /usr/local/lib/qt4/libQtGui.so.4
#50 0x28770ab3 in KApplication::notify (this=0x2c77f130, receiver=0x2c855260, 
    event=0xbfbfe54c)
    at /usr/ports/x11/kdelibs4/work/kdelibs-4.1.0/kdeui/kernel/kapplication.cpp:311
#51 0x298ff4b9 in QCoreApplication::notifyInternal ()
   from /usr/local/lib/qt4/libQtCore.so.4
#52 0x29928228 in QTimerInfoList::activateTimers ()
   from /usr/local/lib/qt4/libQtCore.so.4
#53 0x29925ed0 in timerSourceDispatch ()
   from /usr/local/lib/qt4/libQtCore.so.4
#54 0x2ab631d6 in g_main_context_dispatch ()
   from /usr/local/lib/libglib-2.0.so.0
#55 0x2ab66572 in g_main_context_check () from /usr/local/lib/libglib-2.0.so.0
#56 0x2ab66af5 in g_main_context_iteration ()
   from /usr/local/lib/libglib-2.0.so.0
#57 0x2992655e in QEventDispatcherGlib::processEvents ()
   from /usr/local/lib/qt4/libQtCore.so.4
#58 0x29efcd25 in QGuiEventDispatcherGlib::processEvents ()
   from /usr/local/lib/qt4/libQtGui.so.4
#59 0x298fe633 in QEventLoop::processEvents ()
   from /usr/local/lib/qt4/libQtCore.so.4
#60 0x298fe7c1 in QEventLoop::exec () from /usr/local/lib/qt4/libQtCore.so.4
#61 0x299009aa in QCoreApplication::exec ()
   from /usr/local/lib/qt4/libQtCore.so.4
#62 0x29e76867 in QApplication::exec () from /usr/local/lib/qt4/libQtGui.so.4
#63 0x28093ef8 in kdemain (argc=1, argv=0xbfbfe8cc)
    at /usr/ports/x11/kdebase4-workspace/work/kdebase-workspace-4.1.0/plasma/plasma/main.cpp:54
#64 0x08048802 in main (argc=)
    at /usr/ports/x11/kdebase4-workspace/work/kdebase-workspace-4.1.0/build/plasma/plasma/plasma-qgv_dummy.cpp:3

Thread 2 (Thread 0x2e617500 (LWP 100267)):
#0  0x2a71ca57 in _umtx_op () from /lib/libc.so.7
#1  0x299aee15 in pthread_cleanup_push () from /lib/libthr.so.3
#2  0x299ad84d in pthread_cond_init () from /lib/libthr.so.3
#3  0x2982c906 in QWaitCondition::wait ()
   from /usr/local/lib/qt4/libQtCore.so.4
#4  0x29a43dcd in QHostInfoAgent::run ()
   from /usr/local/lib/qt4/libQtNetwork.so.4
#5  0x2982c274 in QThreadPrivate::start ()
   from /usr/local/lib/qt4/libQtCore.so.4
#6  0x299a77c9 in pthread_getprio () from /lib/libthr.so.3
#7  0x00000000 in ?? ()

Thread 1 (Thread 0x2e6b1d00 (LWP 100268)):
#0  0x2a71ca57 in _umtx_op () from /lib/libc.so.7
#1  0x299aee15 in pthread_cleanup_push () from /lib/libthr.so.3
#2  0x299ad84d in pthread_cond_init () from /lib/libthr.so.3
#3  0x2982c906 in QWaitCondition::wait ()
   from /usr/local/lib/qt4/libQtCore.so.4
#4  0x2e5bb33a in RenderThread::run (this=0x2c7d9890)
    at /usr/ports/x11/kdebase4-workspace/work/kdebase-workspace-4.1.0/plasma/containments/desktop/renderthread.cpp:84
#5  0x2982c274 in QThreadPrivate::start ()
   from /usr/local/lib/qt4/libQtCore.so.4
#6  0x299a77c9 in pthread_getprio () from /lib/libthr.so.3
#7  0x00000000 in ?? ()
Comment 1 Koji Yokota 2009-01-15 14:57:06 UTC
This bug is still persistent in KDE 4.1.1, not only for FreeBSD but also other Linux systems. Is there any additional information I can provide for this bug?

Judging from comments on web, this seems a well-known bug among Japanese users, making them hesitate to move toward KDE4.
Comment 2 Michael Pyne 2009-01-16 03:45:52 UTC
Well I've installed the Japanese language translation and have even gone so far as to run Plasma completely in Japanese (using KDE_LANG=ja, not LANG or LC* however).

Unable to reproduce with /trunk (and presumably from KDE 4.2)

As far as things that would help, a reproducable testcase.  Given that this only happens with some windows and it has something to do with translation I would assume it occurs from an i18n() call, and specifically one that uses the "scripted translation" feature (which is the klocalizedstring.cpp:296 part).

Somehow the scripted translation is causing the crash, so to troubleshoot the crash it would help to find out what the translated version of the crashing message is.
Comment 3 Koji Yokota 2009-01-21 08:19:40 UTC
OK, thank you. I'm going to identify the source of the problem.

I tried only with KDE_LANG=ja, without setting LANG or LC*, but the problem didn't go away.
Comment 4 Andrey Batyiev 2009-02-11 18:20:27 UTC
Same here (using LANG=ru_RU.UTF-8). I made valgrind log and it shows problem in KLocalizedString.

OS: Gentoo Linux

KDE compiled with debug info.
Comment 5 Andrey Batyiev 2009-02-11 18:48:39 UTC
Here the valgrind log: http://omploader.org/vMThtaw/plasma.log

It's 8Mb in size, so bugzilla refused to upload it.
Comment 6 Andrey Batyiev 2009-02-12 00:42:37 UTC
it seems fixed in trunk: http://websvn.kde.org/?view=rev&revision=918505
Comment 7 Koji Yokota 2009-03-11 07:27:49 UTC
Yes, that part seems to be fixed. However, it doesn't seem to be the only source of the problem. Crash still continues with KDE 4.2.1 at my place.
Comment 8 Christoph Feck 2011-07-28 14:52:59 UTC
What is the status of this bug in recent KDE versions, such as 4.6.5 or 4.7? Please add a comment.
Comment 9 Christoph Feck 2012-10-05 01:46:49 UTC
If you can provide the information requested in comment #8, please add it.
Comment 10 Andrew Crouthamel 2018-09-23 02:31:12 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 11 Andrew Crouthamel 2018-10-27 04:16:55 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!