Always treat the GECOS real name field as UTF8-encoded
authorManuel Nickschas <sputnick@quassel-irc.org>
Wed, 22 Apr 2009 13:39:50 +0000 (15:39 +0200)
committerManuel Nickschas <sputnick@quassel-irc.org>
Wed, 22 Apr 2009 13:42:14 +0000 (15:42 +0200)
Thanks to Gökçen Eraslan and H. İbrahim Güngör for this.

src/common/identity.cpp

index 1978ebe..0569178 100644 (file)
@@ -22,6 +22,7 @@
 
 #include <QMetaProperty>
 #include <QVariantMap>
 
 #include <QMetaProperty>
 #include <QVariantMap>
+#include <QString>
 
 #ifdef Q_OS_MAC
 #  include <CoreServices/CoreServices.h>
 
 #ifdef Q_OS_MAC
 #  include <CoreServices/CoreServices.h>
@@ -126,7 +127,7 @@ QString Identity::defaultRealName() {
   QString realName;
   struct passwd *pwd = getpwuid(getuid());
   if(pwd)
   QString realName;
   struct passwd *pwd = getpwuid(getuid());
   if(pwd)
-    realName = pwd->pw_gecos;
+    realName = QString::fromUtf8(pwd->pw_gecos);
   if(!realName.isEmpty())
     return realName;
   else
   if(!realName.isEmpty())
     return realName;
   else