diff options
author | Charles Kerr <charles.kerr@canonical.com> | 2012-06-06 15:19:26 -0500 |
---|---|---|
committer | Charles Kerr <charles.kerr@canonical.com> | 2012-06-06 15:19:26 -0500 |
commit | 73bef489d16b6be22435247e23bf1ed80f4e99f1 (patch) | |
tree | bc781236cd6a8fa319457487d25c2e83b13b6df3 | |
parent | 50fb08d451719f049daa53d4a9649223a980e87b (diff) | |
download | ayatana-indicator-power-73bef489d16b6be22435247e23bf1ed80f4e99f1.tar.gz ayatana-indicator-power-73bef489d16b6be22435247e23bf1ed80f4e99f1.tar.bz2 ayatana-indicator-power-73bef489d16b6be22435247e23bf1ed80f4e99f1.zip |
In indicator_power_device_new_from_variant(), check whether the input variant has the correct type before using it.
-rw-r--r-- | src/device.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/device.c b/src/device.c index 1c818cc..ce24520 100644 --- a/src/device.c +++ b/src/device.c @@ -640,6 +640,10 @@ indicator_power_device_new (const gchar * object_path, IndicatorPowerDevice * indicator_power_device_new_from_variant (GVariant * v) { + g_return_val_if_fail (v != NULL, NULL); + g_return_val_if_fail (g_variant_type_is_tuple(g_variant_get_type(v)), NULL); + g_return_val_if_fail (g_variant_n_children(v) == 6, NULL); + UpDeviceKind kind = UP_DEVICE_KIND_UNKNOWN; UpDeviceState state = UP_DEVICE_STATE_UNKNOWN; const gchar * icon = NULL; |