Hi John,

>> I'm not sure this is the right fix.  This will result in subsequent
API calls to return inconsistent information related to the network
operator.  For example, NetworkRegistration.Name,
NetworkRegistration.MobileNetworkCode,
NetworkRegistration.MobileCountryCode will be omitted.

Can we make sure that the current operator is not destroyed /
unregistered in this particular situation?
It may be possible but I could not figure out a way to do that. So I did
it like this to at least prevent the resulting SIGSEGV.

Understood, but this fix is not really acceptable.

In update_operator_list(), the old operators (that weren't found during Scan()) are unregistered.

        for (o = netreg->operator_list; o; o = o->next)
                network_operator_dbus_unregister(netreg, o->data);

One way of accomplishing the above, would be to detect that netreg->current_operator is being removed and handle that appropriately. E.g. by moving it from the old list to the new list.

Regards,
-Denis


_______________________________________________
ofono mailing list
[email protected]
https://lists.ofono.org/mailman/listinfo/ofono

Reply via email to