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

« back to all changes in this revision

Viewing changes to plugins/ril.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:
80
80
        ofono_bool_t ofono_online;
81
81
        int radio_state;
82
82
        struct ofono_sim *sim;
83
 
        struct ofono_voicecall *voice;
 
83
        struct ofono_radio_settings *radio_settings;
84
84
        int rild_connect_retries;
85
85
};
86
86
 
121
121
                switch (radio_state) {
122
122
                case RADIO_STATE_ON:
123
123
 
124
 
                        if (ril->voice == NULL) {
125
 
                                ril->voice =
126
 
                                        ofono_voicecall_create(modem,
127
 
                                                                ril->vendor,
128
 
                                                                RILMODEM,
129
 
                                                                ril->modem);
130
 
                                ofono_call_volume_create(modem, ril->vendor,
131
 
                                                        RILMODEM, ril->modem);
132
 
                                ofono_radio_settings_create(modem, ril->vendor,
133
 
                                                        RILMODEM, ril->modem);
134
 
                        }
 
124
                        if (ril->radio_settings == NULL)
 
125
                                ril->radio_settings =
 
126
                                        ofono_radio_settings_create(modem,
 
127
                                                ril->vendor, RILMODEM,
 
128
                                                ril->modem);
135
129
 
136
130
                        send_get_sim_status(modem);
137
131
                        break;
257
251
        DBG("");
258
252
 
259
253
        ofono_devinfo_create(modem, ril->vendor, RILMODEM, ril->modem);
 
254
        ofono_voicecall_create(modem, ril->vendor, RILMODEM, ril->modem);
 
255
        ofono_call_volume_create(modem, ril->vendor, RILMODEM, ril->modem);
260
256
 
261
257
        sim_data.gril = ril->modem;
262
258
        sim_data.modem = modem;