Diffstat (limited to 'noncore/settings/networksettings2/networksettings2/wextensions.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/settings/networksettings2/networksettings2/wextensions.cpp | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/noncore/settings/networksettings2/networksettings2/wextensions.cpp b/noncore/settings/networksettings2/networksettings2/wextensions.cpp index 778990c..c10bdc3 100644 --- a/noncore/settings/networksettings2/networksettings2/wextensions.cpp +++ b/noncore/settings/networksettings2/networksettings2/wextensions.cpp @@ -52,10 +52,10 @@ QString WExtensions::station(){ iwr.u.data.length = IW_ESSID_MAX_SIZE; iwr.u.data.flags = 0; if ( 0 == ioctl( fd, SIOCGIWNICKN, &iwr )){ - iwr.u.data.pointer[(unsigned int) iwr.u.data.length-1] = '\0'; - return QString(iwr.u.data.pointer); + buffer[(unsigned int) iwr.u.data.length-1] = '\0'; + return (const char *)buffer; } - return QString(); + return QString::null; } /** @@ -64,9 +64,13 @@ QString WExtensions::station(){ QString WExtensions::essid(){ if(!hasWirelessExtensions) return QString(); + const char* buffer[200]; + iwr.u.data.pointer = (caddr_t) buffer; + iwr.u.data.length = IW_ESSID_MAX_SIZE; + iwr.u.data.flags = 0; if ( 0 == ioctl( fd, SIOCGIWESSID, &iwr )){ - iwr.u.essid.pointer[(unsigned int) iwr.u.essid.length] = '\0'; - return QString(iwr.u.essid.pointer); + buffer[(unsigned int) iwr.u.essid.length] = '\0'; + return (const char *)buffer; } return QString(); } |