~ubuntu-branches/ubuntu/utopic/ofono/utopic-proposed

« back to all changes in this revision

Viewing changes to drivers/rilmodem/gprs.c

  • Committer: Package Import Robot
  • Author(s): Ubuntu daily release, Alfonso Sanchez-Beato, Tony Espy, Ubuntu daily release
  • Date: 2014-09-26 17:34:10 UTC
  • mfrom: (1.3.26)
  • Revision ID: package-import@ubuntu.com-20140926173410-dd4yzlutz0mf37n6
Tags: 1.12.bzr6878+14.10.20140926-0ubuntu1
[ Alfonso Sanchez-Beato ]
* include, plugins/mtk.c, src/modem.c,sim.c: Fix PUK crash (LP: #1365481)
  If the SIM gets locked in particular sequence, ofono will crash
  while trying to free the list of SIM SPN watch events ( which
  have already been freed ).  MTK fix is a bit more involved than
  the stanard RIL logic.

* plugins/mtk.c,ril.c: Show emergency numbers in flight-mode (LP: #1366188)
  Modify plugin logic to create the SimManager interface even if
  no SIM is present.

* gril, unit: fix indicator-network crash (LP: #1368675)
  RIL defines a set of network registration states for emergency
  calling that don't map directly to ofono's states.  This results
  in NetworkRegistration Status not being set at all, which in
  turn crashes the indicator.

* rilmodem/gprs.c: fix crash due to stale timer event (LP: # 1373351)
  A 5s timer is set to retry a STATUS request to RIL, however if
  FlightMode is enabled, the gprs atom is destroyed, and the pending
  timer callback has a stale gprs reference.  Now the timer id is
  stored, and when the atom destroyed, the timer event is cancelled.

* mtkmodem/radio-setttings.c: fix RadioSettings creation (LP: #1374029 )
  If the MTK modem returns a RADIO_NOT_AVAIL error in response
  to a FastDormany RIL request, the RadioSetting initialization
  callback sequence is broken, and thus the RadioSettings interface
  isn't created.  This in turn prevents powerd from enabling
  FastDorancy whenever the screen is turned off, and also has
  implications for system-settings too.

[ Tony Espy ]
* plugins/ubuntu-apndb.c: allow MMS APNs w/out proxy (LP: #1362008)
  Prior to this change, MMS APNs w/out a proxy were skipped.
  Now APNs are skipped if message center is missing, which makes
  more sense.

[ Ubuntu daily release ]
* New rebuild forced

Show diffs side-by-side

added added

removed removed

Lines of Context:
160
160
static gboolean ril_get_status_retry(gpointer user_data)
161
161
{
162
162
        struct ofono_gprs *gprs = user_data;
 
163
        struct ril_gprs_data *gd = ofono_gprs_get_data(gprs);
 
164
 
 
165
        gd->status_retry_cb_id = 0;
163
166
 
164
167
        ril_gprs_registration_status(gprs, NULL, NULL);
165
168
 
302
305
         * are registered in the voice network.
303
306
         */
304
307
        if (old_status == -1 && message->error == RIL_E_GENERIC_FAILURE)
305
 
                g_timeout_add(GET_STATUS_TIMER_MS, ril_get_status_retry, gprs);
 
308
                gd->status_retry_cb_id =
 
309
                        g_timeout_add(GET_STATUS_TIMER_MS,
 
310
                                        ril_get_status_retry, gprs);
306
311
 
307
312
        if (cb)
308
313
                CALLBACK_WITH_FAILURE(cb, -1, cbd->data);
449
454
 
450
455
        DBG("");
451
456
 
 
457
        if (gd->status_retry_cb_id != 0)
 
458
                g_source_remove(gd->status_retry_cb_id);
 
459
 
452
460
        ofono_gprs_set_data(gprs, NULL);
453
461
 
454
462
        g_ril_unref(gd->ril);