From: Manuel Nickschas Date: Wed, 11 Feb 2009 21:15:33 +0000 (+0100) Subject: Use GECOS field for real name on Unix, fixes #517 X-Git-Tag: 0.4.0~89 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=ce6529a3ea1566d5d013f54608617e0c4fd982e0;hp=9e5ced750e86fc8b5d0d6b69b927323a2de7c3ec Use GECOS field for real name on Unix, fixes #517 --- diff --git a/src/common/identity.cpp b/src/common/identity.cpp index b8afedf0..9359264f 100644 --- a/src/common/identity.cpp +++ b/src/common/identity.cpp @@ -115,8 +115,20 @@ QString Identity::defaultNick() { QString Identity::defaultRealName() { QString generalDefault = tr("Quassel IRC User"); + #ifdef Q_OS_MAC return CFStringToQString(CSCopyUserName(false)); + +#elif defined(Q_OS_UNIX) + QString realName; + struct passwd *pwd = getpwuid(getuid()); + if(pwd) + realName = pwd->pw_gecos; + if(!realName.isEmpty()) + return realName; + else + return generalDefault; + #elif defined(Q_OS_WIN32) TCHAR infoBuf[128]; DWORD bufCharCount = 128;