summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2022-09-02 17:21:24 +0200
committerBastien Nocera <hadess@hadess.net>2022-09-05 10:34:03 +0200
commit5c8e74b76b5dd8f65fb54972f3ce23ebc411c51e (patch)
treea9c74900909df2b81cfba64750c9f8e87e4df2e1
parent29ecd92f9ce45f2dfcf71026e7e4ce16b67c0f26 (diff)
linux: Allow filling only the serial from sibling
This fixes the serial number not being set on Bluetooth devices which might not have a serial number but should always have a Bluetooth address to differentiate them.
-rw-r--r--src/linux/up-device-supply.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/src/linux/up-device-supply.c b/src/linux/up-device-supply.c
index ab50c67..7cf452a 100644
--- a/src/linux/up-device-supply.c
+++ b/src/linux/up-device-supply.c
@@ -367,19 +367,21 @@ up_device_supply_sibling_discovered (UpDevice *device,
"serial", &serial_number,
NULL);
- if (model_name == NULL && serial_number == NULL) {
+ if (model_name == NULL) {
model_name = up_device_supply_get_string (input, "name");
- serial_number = up_device_supply_get_string (input, "uniq");
-
up_make_safe_string (model_name);
- up_make_safe_string (serial_number);
-
g_object_set (device,
"model", model_name,
- "serial", serial_number,
NULL);
-
g_free (model_name);
+ }
+
+ if (serial_number == NULL) {
+ serial_number = up_device_supply_get_string (input, "uniq");
+ up_make_safe_string (serial_number);
+ g_object_set (device,
+ "serial", serial_number,
+ NULL);
g_free (serial_number);
}