diff --git a/daemon/src/dbus/networkmanager.cpp b/daemon/src/dbus/networkmanager.cpp
index ed9d6f45f950588fb2c61720d5e5331ccf395712..3bbc15d0043b449f4b2f62c3206beb481b8ac40c 100644
--- a/daemon/src/dbus/networkmanager.cpp
+++ b/daemon/src/dbus/networkmanager.cpp
@@ -30,20 +30,23 @@
 
 #include "networkmanager.h"
 #include "../manager.h"
+#include "array_size.h"
 #include "logger.h"
 
-const std::string NetworkManager::statesString[] = {"unknown", "asleep",
-                                                    "connecting", "connected",
-                                                    "disconnected", "unknown",};
+namespace {
+    const char *stateAsString(uint32_t state)
+    {
+        static const char * STATES[] = {"unknown", "asleep", "connecting",
+            "connected", "disconnected"};
 
-std::string NetworkManager::stateAsString(const uint32_t &state)
-{
-    return statesString[state < 6 ? state : 5];
+        const size_t idx = state < ARRAYSIZE(STATES) ? state : 0;
+        return STATES[idx];
+    }
 }
 
 void NetworkManager::StateChanged(const uint32_t &state)
 {
-    WARN("Network state changed: %s", stateAsString(state).c_str());
+    WARN("Network state changed: %s", stateAsString(state));
 }
 
 void NetworkManager::PropertiesChanged(const std::map<std::string, ::DBus::Variant> &argin0)
diff --git a/daemon/src/dbus/networkmanager.h b/daemon/src/dbus/networkmanager.h
index 69a83a104f0f1692f876b732fd510e44370a9427..252ec739a46be807b4b0d80a729bcba48a0808b9 100644
--- a/daemon/src/dbus/networkmanager.h
+++ b/daemon/src/dbus/networkmanager.h
@@ -45,7 +45,6 @@ class NetworkManager : public org::freedesktop::NetworkManager_proxy,
         NetworkManager(DBus::Connection &, const DBus::Path &, const char*);
         void StateChanged(const uint32_t &state);
         void PropertiesChanged(const std::map<std::string, ::DBus::Variant> &argin0);
-        std::string stateAsString(const uint32_t &state);
 
     private:
         enum NMState {
@@ -55,8 +54,6 @@ class NetworkManager : public org::freedesktop::NetworkManager_proxy,
             NM_STATE_CONNECTED,
             NM_STATE_DISCONNECTED
         };
-
-        static const std::string statesString[];
 };
 #endif