Fix: Add check for register_auto method
authorZhenhua Zhang <zhenhua.zhang@intel.com>
Wed, 25 Nov 2009 05:43:27 +0000 (13:43 +0800)
committerDenis Kenzior <denkenz@gmail.com>
Wed, 25 Nov 2009 02:36:56 +0000 (20:36 -0600)
Add check for register_auto method to avoid crash. HFP backend
does not provide implementation for register_auto.

src/network.c

index 8f99490..620b75e 100644 (file)
@@ -1305,8 +1305,11 @@ static void init_registration_status(const struct ofono_error *error,
        if (netreg->mode == NETWORK_REGISTRATION_MODE_AUTO &&
                (status == NETWORK_REGISTRATION_STATUS_NOT_REGISTERED ||
                        status == NETWORK_REGISTRATION_STATUS_DENIED ||
-                       status == NETWORK_REGISTRATION_STATUS_UNKNOWN))
-               netreg->driver->register_auto(netreg, init_register, netreg);
+                       status == NETWORK_REGISTRATION_STATUS_UNKNOWN)) {
+               if (netreg->driver->register_auto)
+                       netreg->driver->register_auto(netreg, init_register,
+                                                       netreg);
+       }
 }
 
 void ofono_netreg_strength_notify(struct ofono_netreg *netreg, int strength)