aboutsummaryrefslogtreecommitdiffstats
path: root/util/network/interface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'util/network/interface.cpp')
-rw-r--r--util/network/interface.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/util/network/interface.cpp b/util/network/interface.cpp
index 256776c6d3..03c3ccd98d 100644
--- a/util/network/interface.cpp
+++ b/util/network/interface.cpp
@@ -1,5 +1,7 @@
#include "interface.h"
+#include <util/string/ascii.h>
+
#if defined(_unix_)
#include <ifaddrs.h>
#endif
@@ -44,10 +46,10 @@ namespace NAddr {
TNetworkInterface networkInterface;
// Not very efficient but straightforward
- for (size_t i = 0; ptr->FriendlyName[i] != 0; i++) {
- CHAR w = ptr->FriendlyName[i];
- char c = (w < 0x80) ? char(w) : '?';
- networkInterface.Name.append(1, c);
+ wchar_t* it = ptr->FriendlyName;
+ while (*it != '\0') {
+ networkInterface.Name += IsAscii(*it) ? static_cast<char>(*it) : '?';
+ ++it;
}
networkInterface.Address = new TOpaqueAddr(a);