~ubuntu-branches/ubuntu/vivid/modemmanager/vivid-proposed

« back to all changes in this revision

Viewing changes to src/mm-generic-cdma.c

  • Committer: Bazaar Package Importer
  • Author(s): Michael Biebl
  • Date: 2011-06-16 17:12:41 UTC
  • mfrom: (16.1.1 oneiric)
  • Revision ID: james.westby@ubuntu.com-20110616171241-k8vgsdmbpsvx467q
Tags: 0.4.997-1
* debian/watch: Switch to .bz2 tarballs.
* Upload to unstable.

Show diffs side-by-side

added added

removed removed

Lines of Context:
619
619
{
620
620
    MMCallbackInfo *info = (MMCallbackInfo *) user_data;
621
621
 
 
622
    /* If the modem has already been removed, return without
 
623
     * scheduling callback */
 
624
    if (mm_callback_info_check_modem_removed (info))
 
625
        return;
 
626
 
622
627
    if (error) {
623
628
        mm_modem_set_state (MM_MODEM (info->modem),
624
629
                            MM_MODEM_STATE_DISABLED,
699
704
{
700
705
    MMCallbackInfo *info = user_data;
701
706
 
702
 
    info->error = mm_modem_check_removed (modem, error);
703
 
    if (info->error) {
704
 
        if (modem)
705
 
            disable_set_previous_state (modem, info);
 
707
    /* If the modem has already been removed, return without
 
708
     * scheduling callback */
 
709
    if (!modem || mm_callback_info_check_modem_removed (info))
 
710
        return;
 
711
 
 
712
    if (error) {
 
713
        info->error = g_error_copy (error);
 
714
        disable_set_previous_state (modem, info);
706
715
    } else {
707
716
        MMGenericCdma *self = MM_GENERIC_CDMA (info->modem);
708
717
        MMGenericCdmaPrivate *priv = MM_GENERIC_CDMA_GET_PRIVATE (self);
725
734
    MMCallbackInfo *info = user_data;
726
735
    MMGenericCdma *self;
727
736
 
728
 
    info->error = mm_modem_check_removed (info->modem, error);
729
 
    if (info->error) {
730
 
        if (info->modem)
731
 
            disable_set_previous_state (info->modem, info);
 
737
    /* If the modem has already been removed, return without
 
738
     * scheduling callback */
 
739
    if (mm_callback_info_check_modem_removed (info))
 
740
        return;
 
741
 
 
742
    if (error) {
 
743
        info->error = g_error_copy (error);
 
744
 
 
745
        disable_set_previous_state (info->modem, info);
732
746
        mm_callback_info_schedule (info);
733
747
        return;
734
748
    }
787
801
{
788
802
    MMCallbackInfo *info = (MMCallbackInfo *) user_data;
789
803
 
790
 
    info->error = mm_modem_check_removed (info->modem, error);
791
 
    if (info->error) {
792
 
        if (info->modem)
793
 
            update_enabled_state (MM_GENERIC_CDMA (info->modem), FALSE, MM_MODEM_STATE_REASON_NONE);
 
804
    /* If the modem has already been removed, return without
 
805
     * scheduling callback */
 
806
    if (mm_callback_info_check_modem_removed (info))
 
807
        return;
 
808
 
 
809
    if (error) {
 
810
        info->error = g_error_copy (error);
 
811
        update_enabled_state (MM_GENERIC_CDMA (info->modem), FALSE, MM_MODEM_STATE_REASON_NONE);
794
812
    } else {
795
813
        MMGenericCdma *self = MM_GENERIC_CDMA (info->modem);
796
814
        MMGenericCdmaPrivate *priv = MM_GENERIC_CDMA_GET_PRIVATE (self);
831
849
    MMCallbackInfo *info = (MMCallbackInfo *) user_data;
832
850
    MMModemState prev_state;
833
851
 
834
 
    info->error = mm_modem_check_removed (info->modem, error);
835
 
    if (info->error) {
836
 
        if (info->modem) {
837
 
            /* Reset old state since the operation failed */
838
 
            prev_state = GPOINTER_TO_UINT (mm_callback_info_get_data (info, MM_GENERIC_CDMA_PREV_STATE_TAG));
839
 
            mm_modem_set_state (MM_MODEM (info->modem),
840
 
                                prev_state,
841
 
                                MM_MODEM_STATE_REASON_NONE);
842
 
        }
 
852
    /* If the modem has already been removed, return without
 
853
     * scheduling callback */
 
854
    if (mm_callback_info_check_modem_removed (info))
 
855
        return;
 
856
 
 
857
    if (error) {
 
858
        info->error = g_error_copy (error);
 
859
 
 
860
        /* Reset old state since the operation failed */
 
861
        prev_state = GPOINTER_TO_UINT (mm_callback_info_get_data (info, MM_GENERIC_CDMA_PREV_STATE_TAG));
 
862
        mm_modem_set_state (MM_MODEM (info->modem),
 
863
                            prev_state,
 
864
                            MM_MODEM_STATE_REASON_NONE);
843
865
    } else {
844
866
        mm_port_set_connected (MM_GENERIC_CDMA_GET_PRIVATE (info->modem)->data, FALSE);
845
867
        update_enabled_state (MM_GENERIC_CDMA (info->modem), FALSE, MM_MODEM_STATE_REASON_NONE);
929
951
    MMCallbackInfo *info = (MMCallbackInfo *) user_data;
930
952
    char *reply = response->str;
931
953
 
 
954
    /* If the modem has already been removed, return without
 
955
     * scheduling callback */
 
956
    if (mm_callback_info_check_modem_removed (info))
 
957
        return;
 
958
 
932
959
    if (error) {
933
960
        if (mm_callback_info_get_data (info, CSQ2_TRIED))
934
961
            info->error = g_error_copy (error);
1077
1104
    MMCallbackInfo *info = (MMCallbackInfo *) user_data;
1078
1105
    const char *p;
1079
1106
 
 
1107
    /* If the modem has already been removed, return without
 
1108
     * scheduling callback */
 
1109
    if (mm_callback_info_check_modem_removed (info))
 
1110
        return;
 
1111
 
1080
1112
    if (error)
1081
1113
        info->error = g_error_copy (error);
1082
1114
    else {
1207
1239
    unsigned char band = 'Z';
1208
1240
    gboolean success = FALSE;
1209
1241
 
 
1242
    /* If the modem has already been removed, return without
 
1243
     * scheduling callback */
 
1244
    if (mm_callback_info_check_modem_removed (info))
 
1245
        return;
 
1246
 
1210
1247
    if (error) {
1211
1248
        info->error = g_error_copy (error);
1212
1249
        goto out;
1500
1537
{
1501
1538
    MMCallbackInfo *info = (MMCallbackInfo *) user_data;
1502
1539
 
1503
 
    info->error = mm_modem_check_removed (info->modem, error);
1504
 
    if (!info->error) {
 
1540
    /* If the modem has already been removed, return without
 
1541
     * scheduling callback */
 
1542
    if (mm_callback_info_check_modem_removed (info))
 
1543
        return;
 
1544
 
 
1545
    if (error)
 
1546
        info->error = g_error_copy (error);
 
1547
    else {
1505
1548
        /* Set final registration state */
1506
1549
        set_callback_1x_state_helper (info, cdma_reg_state);
1507
1550
        set_callback_evdo_state_helper (info, evdo_reg_state);
1520
1563
    gboolean roam = FALSE;
1521
1564
    const char *p;
1522
1565
 
 
1566
    /* If the modem has already been removed, return without
 
1567
     * scheduling callback */
 
1568
    if (mm_callback_info_check_modem_removed (info))
 
1569
        return;
 
1570
 
1523
1571
    if (error)
1524
1572
        goto done;
1525
1573
 
1559
1607
    MMModemCdmaRegistrationState cdma_state = MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN;
1560
1608
    MMModemCdmaRegistrationState evdo_state = MM_MODEM_CDMA_REGISTRATION_STATE_UNKNOWN;
1561
1609
 
 
1610
    /* If the modem has already been removed, return without
 
1611
     * scheduling callback */
 
1612
    if (mm_callback_info_check_modem_removed (info))
 
1613
        return;
 
1614
 
1562
1615
    if (error)
1563
1616
        info->error = g_error_copy (error);
1564
1617
    else if (mm_cdma_parse_spservice_response (response->str, &cdma_state, &evdo_state)) {
1661
1714
    const char *reply;
1662
1715
    long int int_cad;
1663
1716
 
 
1717
    /* If the modem has already been removed, return without
 
1718
     * scheduling callback */
 
1719
    if (mm_callback_info_check_modem_removed (info))
 
1720
        return;
 
1721
 
1664
1722
    if (error) {
1665
1723
        info->error = g_error_copy (error);
1666
1724
        goto error;
1994
2052
                   MMModemCdmaRegistrationState evdo_new_state,
1995
2053
                   gpointer user_data)
1996
2054
{
1997
 
/* Disabled for now...  changing the registration state from the 
 
2055
/* Disabled for now...  changing the registration state from the
1998
2056
 * subclass' query_registration_state handler also emits the registration
1999
2057
 * state changed signal, which will call this function, and execute
2000
2058
 * simple_state_machine() to advance to the next state.  Then however
2030
2088
    const char *str;
2031
2089
    guint id;
2032
2090
 
2033
 
    info->error = mm_modem_check_removed (modem, error);
2034
 
    if (info->error)
 
2091
    /* Do nothing if modem removed */
 
2092
    if (!modem || mm_callback_info_check_modem_removed (info))
 
2093
        return;
 
2094
 
 
2095
    if (error) {
 
2096
        info->error = g_error_copy (error);
2035
2097
        goto out;
 
2098
    }
2036
2099
 
2037
2100
    switch (state) {
2038
2101
    case SIMPLE_STATE_BEGIN:
2095
2158
 
2096
2159
    info = mm_callback_info_new (MM_MODEM (simple), callback, user_data);
2097
2160
    priv->simple_connect_info = info;
2098
 
    mm_callback_info_set_data (info, "simple-connect-properties", 
 
2161
    mm_callback_info_set_data (info, "simple-connect-properties",
2099
2162
                               g_hash_table_ref (properties),
2100
2163
                               (GDestroyNotify) g_hash_table_unref);
2101
2164