-rw-r--r-- | noncore/settings/networksettings/wlan/wextensions.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/noncore/settings/networksettings/wlan/wextensions.cpp b/noncore/settings/networksettings/wlan/wextensions.cpp index fe21f02..8a9db66 100644 --- a/noncore/settings/networksettings/wlan/wextensions.cpp +++ b/noncore/settings/networksettings/wlan/wextensions.cpp | |||
@@ -56,10 +56,10 @@ QString WExtensions::station(){ | |||
56 | iwr.u.data.length = IW_ESSID_MAX_SIZE; | 56 | iwr.u.data.length = IW_ESSID_MAX_SIZE; |
57 | iwr.u.data.flags = 0; | 57 | iwr.u.data.flags = 0; |
58 | if ( 0 == ioctl( fd, SIOCGIWNICKN, &iwr )){ | 58 | if ( 0 == ioctl( fd, SIOCGIWNICKN, &iwr )){ |
59 | iwr.u.data.pointer[(unsigned int) iwr.u.data.length-1] = '\0'; | 59 | buffer[(unsigned int) iwr.u.data.length-1] = '\0'; |
60 | return QString(iwr.u.data.pointer); | 60 | return (const char*) buffer; |
61 | } | 61 | } |
62 | return QString(); | 62 | return QString::null; |
63 | } | 63 | } |
64 | 64 | ||
65 | /** | 65 | /** |
@@ -68,11 +68,15 @@ QString WExtensions::station(){ | |||
68 | QString WExtensions::essid(){ | 68 | QString WExtensions::essid(){ |
69 | if(!hasWirelessExtensions) | 69 | if(!hasWirelessExtensions) |
70 | return QString(); | 70 | return QString(); |
71 | const char* buffer[200]; | ||
72 | iwr.u.data.pointer = (caddr_t) buffer; | ||
73 | iwr.u.data.length = IW_ESSID_MAX_SIZE; | ||
74 | iwr.u.data.flags = 0; | ||
71 | if ( 0 == ioctl( fd, SIOCGIWESSID, &iwr )){ | 75 | if ( 0 == ioctl( fd, SIOCGIWESSID, &iwr )){ |
72 | iwr.u.essid.pointer[(unsigned int) iwr.u.essid.length] = '\0'; | 76 | buffer[(unsigned int) iwr.u.essid.length] = '\0'; |
73 | return QString(iwr.u.essid.pointer); | 77 | return (const char*) buffer; |
74 | } | 78 | } |
75 | return QString(); | 79 | return QString::null; |
76 | } | 80 | } |
77 | 81 | ||
78 | /** | 82 | /** |