Summary: | User Account module freezes after changung real name | ||
---|---|---|---|
Product: | [Unmaintained] kcontrol | Reporter: | Jure Repinc <jlp> |
Component: | kcmuserinfo | Assignee: | Ravikiran Rajagopal <ravi> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | CC: | kde |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Gentoo Packages | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Jure Repinc
2004-03-13 12:26:41 UTC
I confirm this behavior for kde 3.2.1 but only when the real name entered contains non-ascii characters. The module seems to fall into an infinite loop with 100% CPU usage. However, for my name (Michał Kosmulski), after killing the program, the name is not changed correctly, but gets a '?' in place of the 'ł'. The command line tool for the same job (chfn) rejects 'ł' in real name although its man page says it will accept anything not containing control characters, ':' and a few other chars used commonly as separators. As far as I know, UTF-8 encoded chars never use anything in ascii range 0-127 (except for encoding these very ascii chars), so I don't know why chfn is complaining. When I manually edit my /etc/passwd and enter a UTF-8 encoded 'Michał Kosmulski', everything seems to work OK (and I get a nice description in KDM). Works fine in KDE 3.4 beta1 I have this problem with HEAD from 20.Jan.2005 when I work as root user (I did not test it with non-root user). The Name I entered has no special chars in in (it was "Martin Koller xxx" as a test) The bt from within gdb was: (gdb) bt #0 0x413b9fdc in do_fcntl () from /lib/libpthread.so.0 #1 0x413ba25f in fcntl () from /lib/libpthread.so.0 #2 0x4068ac8e in PtyProcess::readLine (this=0xbfffe518, block=true) at process.cpp:186 #3 0x41c601dd in ChfnProcess::ConverseChfn (this=0x82f4b78, pass=0x82a8210 "********") at qcstring.h:249 #4 0x41c600ba in ChfnProcess::exec (this=0x82f4b78, pass=0x82a8210 "********", name=0x828cb28 "Martin Koller xxx") at chfnprocess.cpp:40 #5 0x41c6277d in KCMUserAccount::save (this=0x82e1930) at qcstring.h:291 <snip> Does this problem still occur with KDE 3.5? Feedback timeout, but please reopen if the problem still occurs in KDE 3.5. Thanks! please reopen, it appears that the freeze appear when you add special letters on the Name like é ë , ... where as is we use them directly with chfn, there is no problems The problem is a bit more incidious... I tried to understand what realy is passed to chfn. But in fact it seems there is an excessive conversion from utf-8 to iso8859-15. For example, set the name to : Raphaël Instead of pass the string in correct utf8 : 0x52,0x61,0x70,0x68,0x61,0xc3,0xab,0x6c It pass the iso8859-15 equivalent string : 0x52,0x61,0x70,0x68,0x61,0xeb,0x6c And then chfn is invoqued with binary char which seems it is unable to drop/handle... The result is chfn keep stuck and kcontrol loop forever waiting for something... kill -9 chfn process workaround the bug. |