aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mm-broadband-modem-mbim.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/mm-broadband-modem-mbim.c b/src/mm-broadband-modem-mbim.c
index 79f5998e..fc13911d 100644
--- a/src/mm-broadband-modem-mbim.c
+++ b/src/mm-broadband-modem-mbim.c
@@ -235,9 +235,17 @@ modem_load_manufacturer (MMIfaceModem *self,
gpointer user_data)
{
GTask *task;
- gchar *manufacturer;
+ gchar *manufacturer = NULL;
+ MMPortMbim *port;
+
+ port = mm_base_modem_peek_port_mbim (MM_BASE_MODEM (self));
+ if (port) {
+ manufacturer = g_strdup (mm_kernel_device_get_physdev_manufacturer (
+ mm_port_peek_kernel_device (MM_PORT (port))));
+ }
- manufacturer = g_strdup (mm_base_modem_get_plugin (MM_BASE_MODEM (self)));
+ if (!manufacturer)
+ manufacturer = g_strdup (mm_base_modem_get_plugin (MM_BASE_MODEM (self)));
task = g_task_new (self, NULL, callback, user_data);
g_task_return_pointer (task, manufacturer, g_free);