device: check for NULL driver in add_port_driver
This patch fixes a crash in MMDevice::add_port_driver() due to
g_str_equal() dereferencing a NULL driver returned by
mm_device_utils_get_port_driver().
Bug reported on https://code.google.com/p/chromium/issues/detail?id=241823
(cherry picked from commit 82a0787906dbf06219202345e2d39be1cb4e9350)
BUG=chromium:241823
TEST=Run network3g suites.
Change-Id: I14f7ed92b455dc2dc00b03ce5ac8860ad60706ba
Reviewed-on: https://gerrit.chromium.org/gerrit/56660
Commit-Queue: Ben Chan <benchan@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
Tested-by: Ben Chan <benchan@chromium.org>
diff --git a/src/mm-device.c b/src/mm-device.c
index bfc4b36..54f6456 100644
--- a/src/mm-device.c
+++ b/src/mm-device.c
@@ -255,6 +255,8 @@
guint i;
driver = mm_device_utils_get_port_driver (udev_port);
+ if (!driver)
+ return;
n_items = (self->priv->drivers ? g_strv_length (self->priv->drivers) : 0);
if (n_items > 0) {