diff options
Diffstat (limited to 'src/devices/nm-device.c')
-rw-r--r-- | src/devices/nm-device.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c index 0558fd47ba..b048571e5a 100644 --- a/src/devices/nm-device.c +++ b/src/devices/nm-device.c @@ -7376,7 +7376,8 @@ set_property (GObject *object, guint prop_id, NMDevicePrivate *priv = NM_DEVICE_GET_PRIVATE (object); NMPlatformLink *platform_device; const char *hw_addr; - + guint hw_addr_len; + switch (prop_id) { case PROP_PLATFORM_DEVICE: platform_device = g_value_get_pointer (value); @@ -7454,7 +7455,9 @@ set_property (GObject *object, guint prop_id, priv->is_master = g_value_get_boolean (value); break; case PROP_HW_ADDRESS: - priv->hw_addr_len = nm_device_get_hw_address_length (NM_DEVICE (object), NULL); + hw_addr_len = nm_device_get_hw_address_length (NM_DEVICE (object), NULL); + g_return_if_fail (hw_addr_len <= NM_UTILS_HWADDR_LEN_MAX); + priv->hw_addr_len = hw_addr_len; hw_addr = g_value_get_string (value); if (!hw_addr) |