Changeset 3753


Ignore:
Timestamp:
Sep 18, 2011 2:59:56 PM (13 years ago)
Author:
bennylp
Message:

Modified the libraries to use the new log indentation feature re #1372

Location:
pjproject/trunk
Files:
15 edited

Legend:

Unmodified
Added
Removed
  • pjproject/trunk/pjnath/src/pjnath/ice_session.c

    r3553 r3753  
    17491749         "Sending connectivity check for check %s",  
    17501750         dump_check(ice->tmp.txt, sizeof(ice->tmp.txt), clist, check))); 
     1751    pj_log_push_indent(); 
    17511752 
    17521753    /* Create request */ 
     
    17561757    if (status != PJ_SUCCESS) { 
    17571758        pjnath_perror(ice->obj_name, "Error creating STUN request", status); 
     1759        pj_log_pop_indent(); 
    17581760        return status; 
    17591761    } 
     
    18121814        check->tdata = NULL; 
    18131815        pjnath_perror(ice->obj_name, "Error sending STUN request", status); 
     1816        pj_log_pop_indent(); 
    18141817        return status; 
    18151818    } 
     
    18171820    check_set_state(ice, check, PJ_ICE_SESS_CHECK_STATE_IN_PROGRESS,  
    18181821                    PJ_SUCCESS); 
     1822    pj_log_pop_indent(); 
    18191823    return PJ_SUCCESS; 
    18201824} 
     
    18461850 
    18471851    LOG5((ice->obj_name, "Starting checklist periodic check")); 
     1852    pj_log_push_indent(); 
    18481853 
    18491854    /* Send STUN Binding request for check with highest priority on 
     
    18571862            if (status != PJ_SUCCESS) { 
    18581863                pj_mutex_unlock(ice->mutex); 
     1864                pj_log_pop_indent(); 
    18591865                return status; 
    18601866            } 
     
    18761882                if (status != PJ_SUCCESS) { 
    18771883                    pj_mutex_unlock(ice->mutex); 
     1884                    pj_log_pop_indent(); 
    18781885                    return status; 
    18791886                } 
     
    18971904 
    18981905    pj_mutex_unlock(ice->mutex); 
     1906    pj_log_pop_indent(); 
    18991907    return PJ_SUCCESS; 
    19001908} 
     
    19091917 
    19101918    LOG4((ice->obj_name, "Starting nominated check..")); 
     1919    pj_log_push_indent(); 
    19111920 
    19121921    pj_assert(ice->is_nominating == PJ_FALSE); 
     
    19591968 
    19601969    ice->is_nominating = PJ_TRUE; 
     1970    pj_log_pop_indent(); 
    19611971} 
    19621972 
     
    20062016 
    20072017    LOG4((ice->obj_name, "Starting ICE check..")); 
     2018    pj_log_push_indent(); 
    20082019 
    20092020    /* If we are using aggressive nomination, set the is_nominating state */ 
     
    20332044        pj_assert(!"Unable to find checklist for component 1"); 
    20342045        pj_mutex_unlock(ice->mutex); 
     2046        pj_log_pop_indent(); 
    20352047        return PJNATH_EICEINCOMPID; 
    20362048    } 
     
    20732085              "Performing delayed triggerred check for component %d", 
    20742086              rcheck->comp_id)); 
     2087        pj_log_push_indent(); 
    20752088        handle_incoming_check(ice, rcheck); 
    20762089        rcheck = rcheck->next; 
     2090        pj_log_pop_indent(); 
    20772091    } 
    20782092    pj_list_init(&ice->early_check); 
     
    20922106 
    20932107    pj_mutex_unlock(ice->mutex); 
     2108    pj_log_pop_indent(); 
    20942109    return status; 
    20952110} 
     
    21942209            /* Resend request */ 
    21952210            LOG4((ice->obj_name, "Resending check because of role conflict")); 
     2211            pj_log_push_indent(); 
    21962212            check_set_state(ice, check, PJ_ICE_SESS_CHECK_STATE_WAITING, 0); 
    21972213            perform_check(ice, clist, msg_data->data.req.ckid,  
    21982214                          check->nominated || ice->is_nominating); 
     2215            pj_log_pop_indent(); 
    21992216            pj_mutex_unlock(ice->mutex); 
    22002217            return; 
     
    22082225             (check->nominated ? " (nominated)" : " (not nominated)"), 
    22092226             errmsg)); 
    2210  
     2227        pj_log_push_indent(); 
    22112228        check_set_state(ice, check, PJ_ICE_SESS_CHECK_STATE_FAILED, status); 
    22122229        on_check_complete(ice, check); 
     2230        pj_log_pop_indent(); 
    22132231        pj_mutex_unlock(ice->mutex); 
    22142232        return; 
     
    22312249                        &ice->clist, check), 
    22322250             (check->nominated ? " (nominated)" : " (not nominated)"))); 
     2251        pj_log_push_indent(); 
    22332252        check_set_state(ice, check, PJ_ICE_SESS_CHECK_STATE_FAILED, status); 
    22342253        on_check_complete(ice, check); 
     2254        pj_log_pop_indent(); 
    22352255        pj_mutex_unlock(ice->mutex); 
    22362256        return; 
     
    27032723 
    27042724            LOG5((ice->obj_name, "Performing triggered check for check %d",i)); 
     2725            pj_log_push_indent(); 
    27052726            perform_check(ice, &ice->clist, i, nominate); 
     2727            pj_log_pop_indent(); 
    27062728 
    27072729        } else if (c->state == PJ_ICE_SESS_CHECK_STATE_IN_PROGRESS) { 
     
    27102732            LOG5((ice->obj_name, "Triggered check for check %d not performed " 
    27112733                  "because it's in progress. Retransmitting", i)); 
     2734            pj_log_push_indent(); 
    27122735            pj_stun_session_retransmit_req(comp->stun_sess, c->tdata); 
     2736            pj_log_pop_indent(); 
    27132737 
    27142738        } else if (c->state == PJ_ICE_SESS_CHECK_STATE_SUCCEEDED) { 
     
    27442768            LOG5((ice->obj_name, "Triggered check for check %d not performed " 
    27452769                                "because it's completed", i)); 
    2746  
     2770            pj_log_push_indent(); 
    27472771            complete = on_check_complete(ice, c); 
     2772            pj_log_pop_indent(); 
    27482773            if (complete) { 
    27492774                return; 
     
    27742799        LOG4((ice->obj_name, "New triggered check added: %d",  
    27752800             ice->clist.count)); 
     2801        pj_log_push_indent(); 
    27762802        perform_check(ice, &ice->clist, ice->clist.count++, nominate); 
     2803        pj_log_pop_indent(); 
    27772804 
    27782805    } else { 
     
    28032830    sd = (struct stun_data*) pj_stun_session_get_user_data(sess); 
    28042831 
     2832    pj_log_push_indent(); 
     2833 
    28052834    if (msg->hdr.type == PJ_STUN_BINDING_INDICATION) { 
    28062835        LOG5((sd->ice->obj_name, "Received Binding Indication keep-alive " 
     
    28112840              sd->comp_id)); 
    28122841    } 
     2842 
     2843    pj_log_pop_indent(); 
    28132844 
    28142845    return PJ_SUCCESS; 
  • pjproject/trunk/pjnath/src/pjnath/ice_strans.c

    r3553 r3753  
    406406                      comp_id)); 
    407407 
     408            pj_log_push_indent(); 
     409 
    408410            /* Start Binding resolution */ 
    409411            status = pj_stun_sock_start(comp->stun_sock,  
     
    413415            if (status != PJ_SUCCESS) { 
    414416                ///sess_dec_ref(ice_st); 
     417                pj_log_pop_indent(); 
    415418                return status; 
    416419            } 
     
    420423            if (status != PJ_SUCCESS) { 
    421424                ///sess_dec_ref(ice_st); 
     425                pj_log_pop_indent(); 
    422426                return status; 
    423427            } 
     
    438442            comp->default_cand = cand - comp->cand_list; 
    439443 
     444            pj_log_pop_indent(); 
    440445        } 
    441446 
     
    537542              "Creating ICE stream transport with %d component(s)", 
    538543              comp_cnt)); 
     544    pj_log_push_indent(); 
    539545 
    540546    pj_ice_strans_cfg_copy(pool, &ice_st->cfg, cfg); 
     
    551557    if (status != PJ_SUCCESS) { 
    552558        destroy_ice_st(ice_st); 
     559        pj_log_pop_indent(); 
    553560        return status; 
    554561    } 
     
    571578            pj_lock_release(ice_st->init_lock); 
    572579            destroy_ice_st(ice_st); 
     580            pj_log_pop_indent(); 
    573581            return status; 
    574582        } 
     
    584592 
    585593    *p_ice_st = ice_st; 
     594    pj_log_pop_indent(); 
     595 
    586596    return PJ_SUCCESS; 
    587597} 
     
    591601{ 
    592602    unsigned i; 
     603 
     604    PJ_LOG(5,(ice_st->obj_name, "ICE stream transport destroying..")); 
     605    pj_log_push_indent(); 
    593606 
    594607    /* Destroy ICE if we have ICE */ 
     
    630643    } 
    631644 
     645    PJ_LOG(4,(ice_st->obj_name, "ICE stream transport destroyed")); 
     646 
    632647    /* Done */ 
    633648    pj_pool_release(ice_st->pool); 
     649    pj_log_pop_indent(); 
    634650} 
    635651 
     
    665681    pj_strerror(status, errmsg, sizeof(errmsg)); 
    666682    PJ_LOG(4,(ice_st->obj_name, "%s: %s", title, errmsg)); 
    667  
    668     if (op==PJ_ICE_STRANS_OP_INIT && ice_st->cb_called) 
     683    pj_log_push_indent(); 
     684 
     685    if (op==PJ_ICE_STRANS_OP_INIT && ice_st->cb_called) { 
     686        pj_log_pop_indent(); 
    669687        return; 
     688    } 
    670689 
    671690    ice_st->cb_called = PJ_TRUE; 
     
    673692    if (ice_st->cb.on_ice_complete) 
    674693        (*ice_st->cb.on_ice_complete)(ice_st, op, status); 
     694 
     695    pj_log_pop_indent(); 
    675696} 
    676697 
     
    710731PJ_DEF(pj_status_t) pj_ice_strans_destroy(pj_ice_strans *ice_st) 
    711732{ 
    712     char obj_name[PJ_MAX_OBJ_NAME]; 
    713  
    714733    PJ_ASSERT_RETURN(ice_st, PJ_EINVAL); 
    715734 
     
    721740    } 
    722741     
    723     pj_memcpy(obj_name, ice_st->obj_name, PJ_MAX_OBJ_NAME); 
    724742    destroy_ice_st(ice_st); 
    725  
    726     PJ_LOG(4,(obj_name, "ICE stream transport destroyed")); 
    727743    return PJ_SUCCESS; 
    728744} 
     
    12951311                                               PJ_ICE_STRANS_STATE_FAILED; 
    12961312 
     1313        pj_log_push_indent(); 
    12971314        (*ice_st->cb.on_ice_complete)(ice_st, PJ_ICE_STRANS_OP_NEGOTIATION,  
    12981315                                      status); 
    1299  
     1316        pj_log_pop_indent(); 
    13001317         
    13011318    } 
     
    16161633    PJ_LOG(5,(comp->ice_st->obj_name, "TURN client state changed %s --> %s", 
    16171634              pj_turn_state_name(old_state), pj_turn_state_name(new_state))); 
     1635    pj_log_push_indent(); 
    16181636 
    16191637    sess_add_ref(comp->ice_st); 
     
    16911709 
    16921710    sess_dec_ref(comp->ice_st); 
    1693 } 
    1694  
     1711 
     1712    pj_log_pop_indent(); 
     1713} 
     1714 
  • pjproject/trunk/pjnath/src/pjnath/stun_session.c

    r3553 r3753  
    865865    PJ_ASSERT_RETURN(sess && addr_len && server && tdata, PJ_EINVAL); 
    866866 
     867    pj_log_push_indent(); 
     868 
    867869    /* Allocate packet */ 
    868870    tdata->max_len = PJ_STUN_MAX_PKT_LEN; 
     
    972974on_return: 
    973975    pj_lock_release(sess->lock); 
     976 
     977    pj_log_pop_indent(); 
    974978 
    975979    /* Check if application has called destroy() in the callback */ 
     
    13541358    PJ_ASSERT_RETURN(sess && packet && pkt_size, PJ_EINVAL); 
    13551359 
     1360    pj_log_push_indent(); 
     1361 
    13561362    /* Lock the session and prevent user from destroying us in the callback */ 
    13571363    pj_atomic_inc(sess->busy); 
     
    14111417    pj_lock_release(sess->lock); 
    14121418 
     1419    pj_log_pop_indent(); 
     1420 
    14131421    /* If we've received destroy request while we're on the callback, 
    14141422     * destroy the session now. 
  • pjproject/trunk/pjnath/src/pjnath/stun_transaction.c

    r3553 r3753  
    226226    PJ_LOG(5,(tsx->obj_name, "STUN sending message (transmit count=%d)", 
    227227              tsx->transmit_count)); 
     228    pj_log_push_indent(); 
    228229 
    229230    /* Send message */ 
     
    239240        } 
    240241        stun_perror(tsx, "STUN error sending message", status); 
    241         return status; 
    242     } 
    243  
     242    } 
     243 
     244    pj_log_pop_indent(); 
    244245    return status; 
    245246} 
     
    322323        tsx->retransmit_timer.id = 0; 
    323324        PJ_LOG(4,(tsx->obj_name, "STUN timeout waiting for response")); 
     325        pj_log_push_indent(); 
    324326        if (!tsx->complete) { 
    325327            tsx->complete = PJ_TRUE; 
     
    329331        } 
    330332        /* We might have been destroyed, don't try to access the object */ 
     333        pj_log_pop_indent(); 
    331334        return; 
    332335    } 
  • pjproject/trunk/pjsip/src/pjsip-simple/evsub.c

    r3553 r3753  
    579579              (int)sub->state_str.slen, 
    580580              sub->state_str.ptr)); 
     581    pj_log_push_indent(); 
    581582 
    582583    /* don't call the callback with NULL event, it may crash the app! */ 
     
    596597        } 
    597598    } 
     599 
     600    pj_log_pop_indent(); 
    598601} 
    599602 
     
    628631 
    629632            PJ_LOG(5,(sub->obj_name, "Refreshing subscription.")); 
     633            pj_log_push_indent(); 
    630634            status = pjsip_evsub_initiate(sub, NULL,  
    631635                                          sub->expires->ivalue, 
     
    633637            if (status == PJ_SUCCESS) 
    634638                pjsip_evsub_send_request(sub, tdata); 
     639 
     640            pj_log_pop_indent(); 
    635641        } 
    636642        break; 
     
    646652            PJ_LOG(5,(sub->obj_name, "Timeout waiting for refresh. " 
    647653                                     "Sending NOTIFY to terminate.")); 
     654            pj_log_push_indent(); 
    648655            status = pjsip_evsub_notify( sub, PJSIP_EVSUB_STATE_TERMINATED,  
    649656                                         NULL, &STR_TIMEOUT, &tdata); 
    650657            if (status == PJ_SUCCESS) 
    651658                pjsip_evsub_send_request(sub, tdata); 
     659 
     660            pj_log_pop_indent(); 
    652661        } 
    653662        break; 
     
    659668            PJ_LOG(5,(sub->obj_name, "Timeout waiting for final NOTIFY. " 
    660669                                     "Terminating..")); 
     670            pj_log_push_indent(); 
    661671            set_state(sub, PJSIP_EVSUB_STATE_TERMINATED, NULL, NULL,  
    662672                      &timeout); 
     673            pj_log_pop_indent(); 
    663674        } 
    664675        break; 
     
    673684                     "send non-2xx response for previous NOTIFY). " 
    674685                     "Unsubscribing..")); 
     686            pj_log_push_indent(); 
    675687            status = pjsip_evsub_initiate( sub, NULL, 0, &tdata); 
    676688            if (status == PJ_SUCCESS) 
    677689                pjsip_evsub_send_request(sub, tdata); 
     690 
     691            pj_log_pop_indent(); 
    678692        } 
    679693        break; 
  • pjproject/trunk/pjsip/src/pjsip-ua/sip_inv.c

    r3553 r3753  
    19171917    PJ_ASSERT_RETURN(inv->invite_tsx, PJ_EBUG); 
    19181918 
     1919    pj_log_push_indent(); 
     1920 
    19191921    pjsip_dlg_inc_lock(inv->dlg); 
    19201922 
     
    19641966on_return: 
    19651967    pjsip_dlg_dec_lock(inv->dlg); 
     1968    pj_log_pop_indent(); 
    19661969    return status; 
    19671970} 
     
    19901993    PJ_ASSERT_RETURN(inv->last_answer, PJ_EINVALIDOP); 
    19911994 
     1995    pj_log_push_indent(); 
     1996 
    19921997    pjsip_dlg_inc_lock(inv->dlg); 
    19931998 
     
    20172022on_return: 
    20182023    pjsip_dlg_dec_lock(inv->dlg); 
     2024    pj_log_pop_indent(); 
    20192025    return status; 
    20202026} 
     
    20522058    /* Verify arguments. */ 
    20532059    PJ_ASSERT_RETURN(inv && p_tdata, PJ_EINVAL); 
     2060 
     2061    pj_log_push_indent(); 
    20542062 
    20552063    /* Set cause code. */ 
     
    20822090                PJ_LOG(4, (inv->obj_name, "Delaying CANCEL since no " 
    20832091                           "provisional response is received yet")); 
     2092                pj_log_pop_indent(); 
    20842093                return PJ_SUCCESS; 
    20852094            } 
     
    20932102                                               inv->invite_tsx->last_tx, 
    20942103                                               &tdata); 
    2095             if (status != PJ_SUCCESS) 
     2104            if (status != PJ_SUCCESS) { 
     2105                pj_log_pop_indent(); 
    20962106                return status; 
     2107            } 
    20972108 
    20982109            /* Set timeout for the INVITE transaction, in case UAS is not 
     
    21262137    case PJSIP_INV_STATE_DISCONNECTED: 
    21272138        /* No need to do anything. */ 
     2139        pj_log_pop_indent(); 
    21282140        return PJSIP_ESESSIONTERMINATED; 
    21292141 
    21302142    default: 
    21312143        pj_assert("!Invalid operation!"); 
     2144        pj_log_pop_indent(); 
    21322145        return PJ_EINVALIDOP; 
    21332146    } 
    21342147 
    2135     if (status != PJ_SUCCESS) 
     2148    if (status != PJ_SUCCESS) { 
     2149        pj_log_pop_indent(); 
    21362150        return status; 
     2151    } 
    21372152 
    21382153 
     
    21422157    *p_tdata = tdata; 
    21432158 
     2159    pj_log_pop_indent(); 
    21442160    return PJ_SUCCESS; 
    21452161} 
     
    23642380        return PJ_EINVALIDOP; 
    23652381 
     2382    pj_log_push_indent(); 
    23662383 
    23672384    pjsip_dlg_inc_lock(inv->dlg); 
     
    24342451on_return: 
    24352452    pjsip_dlg_dec_lock(inv->dlg); 
     2453    pj_log_pop_indent(); 
    24362454    return status; 
    24372455} 
     
    24602478    PJ_ASSERT_RETURN(inv->state < PJSIP_INV_STATE_DISCONNECTED, 
    24612479                     PJ_EINVALIDOP); 
     2480 
     2481    pj_log_push_indent(); 
    24622482 
    24632483    /* Lock dialog. */ 
     
    25232543    *p_tdata = tdata; 
    25242544 
     2545    pj_log_pop_indent(); 
    25252546    return PJ_SUCCESS; 
    25262547 
     
    25322553    pjsip_dlg_dec_lock(inv->dlg); 
    25332554 
     2555    pj_log_pop_indent(); 
    25342556    return status; 
    25352557} 
     
    25942616    PJ_ASSERT_RETURN(inv && tdata, PJ_EINVAL); 
    25952617 
     2618    pj_log_push_indent(); 
     2619 
    25962620    PJ_LOG(5,(inv->obj_name, "Sending %s",  
    25972621              pjsip_tx_data_get_info(tdata))); 
     
    26082632            pjsip_tx_data_dec_ref(tdata); 
    26092633            pjsip_dlg_dec_lock(inv->dlg); 
    2610             return PJ_EINVALIDOP; 
     2634            status = PJ_EINVALIDOP; 
     2635            goto on_error; 
    26112636        } 
    26122637 
     
    26192644        status = pjsip_dlg_send_request(inv->dlg, tdata, mod_inv.mod.id,  
    26202645                                        tsx_inv_data); 
    2621         if (status != PJ_SUCCESS) 
    2622             return status; 
     2646        if (status != PJ_SUCCESS) { 
     2647            goto on_error; 
     2648        } 
    26232649 
    26242650    } else { 
     
    26392665        } 
    26402666 
    2641         if (status != PJ_SUCCESS) 
    2642             return status; 
    2643     } 
    2644  
    2645     /* Done (?) */ 
     2667        if (status != PJ_SUCCESS) { 
     2668            goto on_error; 
     2669        } 
     2670    } 
     2671 
     2672    /* Done */ 
     2673    pj_log_pop_indent(); 
    26462674    return PJ_SUCCESS; 
     2675 
     2676on_error: 
     2677    pj_log_pop_indent(); 
     2678    return status; 
    26472679} 
    26482680 
  • pjproject/trunk/pjsip/src/pjsip/sip_dialog.c

    r3553 r3753  
    803803    PJ_ASSERT_RETURN(dlg && mod, PJ_EINVAL); 
    804804 
     805    pj_log_push_indent(); 
     806 
    805807    pjsip_dlg_inc_lock(dlg); 
    806808    ++dlg->sess_count; 
     
    810812              dlg->sess_count, (int)mod->name.slen, mod->name.ptr)); 
    811813 
     814    pj_log_pop_indent(); 
    812815    return PJ_SUCCESS; 
    813816} 
     
    890893    PJ_ASSERT_RETURN(dlg, PJ_EINVAL); 
    891894 
     895    pj_log_push_indent(); 
     896 
    892897    PJ_LOG(5,(dlg->obj_name, "Session count dec to %d by %.*s", 
    893898              dlg->sess_count-1, (int)mod->name.slen, mod->name.ptr)); 
     
    897902    pjsip_dlg_dec_lock(dlg); 
    898903 
     904    pj_log_pop_indent(); 
    899905    return PJ_SUCCESS; 
    900906} 
     
    11511157                     PJSIP_ENOTREQUESTMSG); 
    11521158 
     1159    pj_log_push_indent(); 
    11531160    PJ_LOG(5,(dlg->obj_name, "Sending %s", 
    11541161              pjsip_tx_data_get_info(tdata))); 
     
    12221229    /* Unlock dialog, may destroy dialog. */ 
    12231230    pjsip_dlg_dec_lock(dlg); 
    1224  
     1231    pj_log_pop_indent(); 
    12251232    return PJ_SUCCESS; 
    12261233 
     
    12311238    /* Whatever happen delete the message. */ 
    12321239    pjsip_tx_data_dec_ref( tdata ); 
    1233  
     1240    pj_log_pop_indent(); 
    12341241    return status; 
    12351242} 
     
    14091416    PJ_ASSERT_RETURN(tsx->mod_data[dlg->ua->id] == dlg, PJ_EINVALIDOP); 
    14101417 
     1418    pj_log_push_indent(); 
     1419 
    14111420    PJ_LOG(5,(dlg->obj_name, "Sending %s", 
    14121421              pjsip_tx_data_get_info(tdata))); 
     
    14531462 
    14541463    pjsip_dlg_dec_lock(dlg); 
     1464    pj_log_pop_indent(); 
    14551465 
    14561466    return status; 
     
    15201530    PJ_LOG(5,(dlg->obj_name, "Received %s", 
    15211531              pjsip_rx_data_get_info(rdata))); 
     1532    pj_log_push_indent(); 
    15221533 
    15231534    /* Lock dialog and increment session. */ 
     
    15411552        pjsip_endpt_respond_stateless(dlg->endpt, 
    15421553                                      rdata, 500, &warn_text, NULL, NULL); 
     1554        pj_log_pop_indent(); 
    15431555        return; 
    15441556    } 
     
    16441656    /* Unlock dialog and dec session, may destroy dialog. */ 
    16451657    pjsip_dlg_dec_lock(dlg); 
     1658    pj_log_pop_indent(); 
    16461659} 
    16471660 
     
    17401753    PJ_LOG(5,(dlg->obj_name, "Received %s", 
    17411754              pjsip_rx_data_get_info(rdata))); 
     1755    pj_log_push_indent(); 
    17421756 
    17431757    /* Lock the dialog and inc session. */ 
     
    19321946    /* Unlock dialog and dec session, may destroy dialog. */ 
    19331947    pjsip_dlg_dec_lock(dlg); 
     1948 
     1949    pj_log_pop_indent(); 
    19341950} 
    19351951 
     
    19451961    PJ_LOG(5,(dlg->obj_name, "Transaction %s state changed to %s", 
    19461962              tsx->obj_name, pjsip_tsx_state_str(tsx->state))); 
     1963    pj_log_push_indent(); 
    19471964 
    19481965    /* Lock the dialog and increment session. */ 
     
    19731990    /* Unlock dialog and dec session, may destroy dialog. */ 
    19741991    pjsip_dlg_dec_lock(dlg); 
     1992    pj_log_pop_indent(); 
    19751993} 
    19761994 
  • pjproject/trunk/pjsip/src/pjsip/sip_endpoint.c

    r3553 r3753  
    826826    PJ_LOG(5, (THIS_FILE, "Processing incoming message: %s",  
    827827               pjsip_rx_data_get_info(rdata))); 
     828    pj_log_push_indent(); 
    828829 
    829830#if defined(PJSIP_CHECK_VIA_SENT_BY) && PJSIP_CHECK_VIA_SENT_BY != 0 
     
    881882                                 rdata->pkt_info.src_name,  
    882883                                 rdata->pkt_info.src_port)); 
     884            pj_log_pop_indent(); 
    883885            return; 
    884886        } 
     
    941943     */ 
    942944    pj_bzero(&rdata->endpt_info, sizeof(rdata->endpt_info)); 
     945 
     946    pj_log_pop_indent(); 
    943947} 
    944948 
  • pjproject/trunk/pjsip/src/pjsip/sip_transaction.c

    r3553 r3753  
    10871087    PJ_LOG(5,(tsx->obj_name, "%s timer event",  
    10881088             (entry==&tsx->retransmit_timer ? "Retransmit":"Timeout"))); 
     1089    pj_log_push_indent(); 
    10891090 
    10901091 
     
    10951096    (*tsx->state_handler)(tsx, &event); 
    10961097    unlock_tsx(tsx, &lck); 
     1098 
     1099    pj_log_pop_indent(); 
    10971100} 
    10981101 
     
    11141117               state_str[tsx->state], state_str[state],  
    11151118               pjsip_event_str(event_src_type))); 
     1119    pj_log_push_indent(); 
    11161120 
    11171121    /* Change state. */ 
     
    11921196        tsx_destroy(tsx); 
    11931197    } 
     1198 
     1199    pj_log_pop_indent(); 
    11941200} 
    11951201 
     
    13251331    unlock_tsx(tsx, &lck); 
    13261332 
     1333    pj_log_push_indent(); 
    13271334    PJ_LOG(5,(tsx->obj_name, "Transaction created for %s", 
    13281335              pjsip_tx_data_get_info(tdata))); 
     1336    pj_log_pop_indent(); 
    13291337 
    13301338    *p_tsx = tsx; 
     
    14671475    unlock_tsx(tsx, &lck); 
    14681476 
    1469  
     1477    pj_log_push_indent(); 
    14701478    PJ_LOG(5,(tsx->obj_name, "Transaction created for %s", 
    14711479              pjsip_rx_data_get_info(rdata))); 
     1480    pj_log_pop_indent(); 
    14721481 
    14731482 
     
    15371546        return PJ_SUCCESS; 
    15381547 
     1548    pj_log_push_indent(); 
     1549 
    15391550    lock_tsx(tsx, &lck); 
    15401551    tsx_set_status_code(tsx, code, NULL); 
     
    15421553    unlock_tsx(tsx, &lck); 
    15431554 
     1555    pj_log_pop_indent(); 
     1556 
    15441557    return PJ_SUCCESS; 
    15451558} 
     
    15611574 
    15621575    PJ_LOG(5,(tsx->obj_name, "Request to stop retransmission")); 
     1576 
     1577    pj_log_push_indent(); 
    15631578 
    15641579    lock_tsx(tsx, &lck); 
     
    15691584    } 
    15701585    unlock_tsx(tsx, &lck); 
     1586 
     1587    pj_log_pop_indent(); 
    15711588 
    15721589    return PJ_SUCCESS; 
     
    16411658                             pjsip_tx_data_get_info(tdata), 
    16421659                             state_str[tsx->state])); 
     1660    pj_log_push_indent(); 
    16431661 
    16441662    PJSIP_EVENT_INIT_TX_MSG(event, tdata); 
     
    16621680    } 
    16631681 
     1682    pj_log_pop_indent(); 
     1683 
    16641684    return status; 
    16651685} 
     
    16791699    PJ_LOG(5,(tsx->obj_name, "Incoming %s in state %s",  
    16801700              pjsip_rx_data_get_info(rdata), state_str[tsx->state])); 
     1701    pj_log_push_indent(); 
    16811702 
    16821703    /* Put the transaction in the rdata's mod_data. */ 
     
    16901711    status = (*tsx->state_handler)(tsx, &event); 
    16911712    unlock_tsx(tsx, &lck); 
     1713 
     1714    pj_log_pop_indent(); 
    16921715} 
    16931716 
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_acc.c

    r3683 r3753  
    375375    pjsua_acc *acc; 
    376376    unsigned i, id; 
    377     pj_status_t status; 
    378  
     377    pj_status_t status = PJ_SUCCESS; 
     378 
     379    PJ_ASSERT_RETURN(cfg, PJ_EINVAL); 
    379380    PJ_ASSERT_RETURN(pjsua_var.acc_cnt < PJ_ARRAY_SIZE(pjsua_var.acc), 
    380381                     PJ_ETOOMANY); 
     
    385386    /* Verify media count */ 
    386387#if !defined(PJMEDIA_HAS_VIDEO) || (PJMEDIA_HAS_VIDEO == 0) 
     388    /* Enable PJMEDIA_HAS_VIDEO in your config_site.h! */ 
    387389    PJ_ASSERT_RETURN(cfg->max_video_cnt == 0, PJ_EINVAL); 
    388390#endif 
    389391    PJ_ASSERT_RETURN(cfg->max_audio_cnt + cfg->max_video_cnt <=  
    390392                     PJSUA_MAX_CALL_MEDIA, PJ_ETOOMANY); 
     393 
     394    PJ_LOG(4,(THIS_FILE, "Adding account: id=%.*s", 
     395              (int)cfg->id.slen, cfg->id.ptr)); 
     396    pj_log_push_indent(); 
    391397 
    392398    PJSUA_LOCK(); 
     
    434440    for (i=0; i<acc->cfg.proxy_cnt; ++i) { 
    435441        status = normalize_route_uri(acc->pool, &acc->cfg.proxy[i]); 
    436         if (status != PJ_SUCCESS) 
     442        if (status != PJ_SUCCESS) { 
     443            PJSUA_UNLOCK(); 
     444            pj_log_pop_indent(); 
    437445            return status; 
     446        } 
    438447    } 
    439448 
     
    444453        acc->pool = NULL; 
    445454        PJSUA_UNLOCK(); 
     455        pj_log_pop_indent(); 
    446456        return status; 
    447457    } 
     
    469479    } 
    470480 
     481    pj_log_pop_indent(); 
    471482    return PJ_SUCCESS; 
    472483} 
     
    575586    PJ_ASSERT_RETURN(pjsua_var.acc[acc_id].valid, PJ_EINVALIDOP); 
    576587 
     588    PJ_LOG(4,(THIS_FILE, "Deleting account %d..", acc_id)); 
     589    pj_log_push_indent(); 
     590 
    577591    PJSUA_LOCK(); 
    578592 
     
    625639    PJ_LOG(4,(THIS_FILE, "Account id %d deleted", acc_id)); 
    626640 
     641    pj_log_pop_indent(); 
    627642    return PJ_SUCCESS; 
    628643} 
     
    656671                     PJSUA_MAX_CALL_MEDIA, PJ_ETOOMANY); 
    657672 
     673    PJ_LOG(4,(THIS_FILE, "Modifying accunt %d", acc_id)); 
     674    pj_log_push_indent(); 
    658675 
    659676    PJSUA_LOCK(); 
     
    10411058on_return: 
    10421059    PJSUA_UNLOCK(); 
     1060    pj_log_pop_indent(); 
    10431061    return status; 
    10441062} 
     
    10561074    PJ_ASSERT_RETURN(pjsua_var.acc[acc_id].valid, PJ_EINVALIDOP); 
    10571075 
     1076    PJ_LOG(4,(THIS_FILE, "Acc %d: setting online status to %d..", 
     1077              acc_id, is_online)); 
     1078    pj_log_push_indent(); 
     1079 
    10581080    pjsua_var.acc[acc_id].online_status = is_online; 
    10591081    pj_bzero(&pjsua_var.acc[acc_id].rpid, sizeof(pjrpid_element)); 
    10601082    pjsua_pres_update_acc(acc_id, PJ_FALSE); 
     1083 
     1084    pj_log_pop_indent(); 
    10611085    return PJ_SUCCESS; 
    10621086} 
     
    10741098    PJ_ASSERT_RETURN(pjsua_var.acc[acc_id].valid, PJ_EINVALIDOP); 
    10751099 
     1100    PJ_LOG(4,(THIS_FILE, "Acc %d: setting online status to %d..", 
     1101              acc_id, is_online)); 
     1102    pj_log_push_indent(); 
     1103 
    10761104    PJSUA_LOCK(); 
    10771105    pjsua_var.acc[acc_id].online_status = is_online; 
     
    10801108 
    10811109    pjsua_pres_update_acc(acc_id, PJ_TRUE); 
     1110    pj_log_pop_indent(); 
     1111 
    10821112    return PJ_SUCCESS; 
    10831113} 
     
    16651695        return; 
    16661696 
     1697    pj_log_push_indent(); 
    16671698    PJSUA_LOCK(); 
    16681699 
     
    17161747            if (acc_check_nat_addr(acc, param)) { 
    17171748                PJSUA_UNLOCK(); 
     1749                pj_log_pop_indent(); 
    17181750                return; 
    17191751            } 
     
    17781810     
    17791811    PJSUA_UNLOCK(); 
     1812    pj_log_pop_indent(); 
    17801813} 
    17811814 
     
    19651998    PJ_ASSERT_RETURN(pjsua_var.acc[acc_id].valid, PJ_EINVALIDOP); 
    19661999 
     2000    PJ_LOG(4,(THIS_FILE, "Acc %d: setting %sregistration..", 
     2001              acc_id, (renew? "" : "un"))); 
     2002    pj_log_push_indent(); 
     2003 
    19672004    PJSUA_LOCK(); 
    19682005 
     
    20402077                     status); 
    20412078    } else { 
    2042         PJ_LOG(3,(THIS_FILE, "%s sent", 
     2079        PJ_LOG(4,(THIS_FILE, "Acc %d: %s sent", acc_id, 
    20432080                 (renew? "Registration" : "Unregistration"))); 
    20442081    } 
     
    20462083on_return: 
    20472084    PJSUA_UNLOCK(); 
     2085    pj_log_pop_indent(); 
    20482086    return status; 
    20492087} 
     
    27912829        return; 
    27922830 
     2831    PJ_LOG(4,(THIS_FILE, "Disconnected notification for transport %s", 
     2832              tp->obj_name)); 
     2833    pj_log_push_indent(); 
     2834 
    27932835    /* Shutdown this transport, to make sure that the transport manager  
    27942836     * will create a new transport for reconnection. 
     
    28182860 
    28192861    PJSUA_UNLOCK(); 
    2820 } 
     2862    pj_log_pop_indent(); 
     2863} 
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_call.c

    r3694 r3753  
    343343                                          pjsua_call_id *p_call_id) 
    344344{ 
    345     pj_pool_t *tmp_pool; 
     345    pj_pool_t *tmp_pool = NULL; 
    346346    pjsip_dialog *dlg = NULL; 
    347347    pjmedia_sdp_session *offer; 
     
    362362    PJ_ASSERT_RETURN(dest_uri, PJ_EINVAL); 
    363363 
     364    PJ_LOG(4,(THIS_FILE, "Making call with acc #%d to %.*s", acc_id, 
     365              (int)dest_uri->slen, dest_uri->ptr)); 
     366 
     367    pj_log_push_indent(); 
     368 
    364369    PJSUA_LOCK(); 
    365370 
     
    375380 
    376381        status = pjsua_set_snd_dev(pjsua_var.cap_dev, pjsua_var.play_dev); 
    377         if (status != PJ_SUCCESS) { 
    378             PJSUA_UNLOCK(); 
    379             return status; 
    380         } 
     382        if (status != PJ_SUCCESS) 
     383            goto on_error; 
    381384    } 
    382385 
     
    385388        pjsua_perror(THIS_FILE, "Unable to make call because account " 
    386389                     "is not valid", PJ_EINVALIDOP); 
    387         PJSUA_UNLOCK(); 
    388         return PJ_EINVALIDOP; 
     390        status = PJ_EINVALIDOP; 
     391        goto on_error; 
    389392    } 
    390393 
     
    394397    if (call_id == PJSUA_INVALID_ID) { 
    395398        pjsua_perror(THIS_FILE, "Error making call", PJ_ETOOMANY); 
    396         PJSUA_UNLOCK(); 
    397         return PJ_ETOOMANY; 
     399        status = PJ_ETOOMANY; 
     400        goto on_error; 
    398401    } 
    399402 
     
    422425            pjsua_perror(THIS_FILE, "Unable to make call",  
    423426                         PJSIP_EINVALIDREQURI); 
    424             pj_pool_release(tmp_pool); 
    425             PJSUA_UNLOCK(); 
    426             return PJSIP_EINVALIDREQURI; 
    427         } 
    428     } 
    429  
    430     PJ_LOG(4,(THIS_FILE, "Making call with acc #%d to %.*s", acc_id, 
    431               (int)dest_uri->slen, dest_uri->ptr)); 
     427            status = PJSIP_EINVALIDREQURI; 
     428            goto on_error; 
     429        } 
     430    } 
    432431 
    433432    /* Mark call start time. */ 
     
    448447            pjsua_perror(THIS_FILE, "Unable to generate Contact header",  
    449448                         status); 
    450             pj_pool_release(tmp_pool); 
    451             PJSUA_UNLOCK(); 
    452             return status; 
     449            goto on_error; 
    453450        } 
    454451    } 
     
    460457    if (status != PJ_SUCCESS) { 
    461458        pjsua_perror(THIS_FILE, "Dialog creation failed", status); 
    462         pj_pool_release(tmp_pool); 
    463         PJSUA_UNLOCK(); 
    464         return status; 
     459        goto on_error; 
    465460    } 
    466461 
     
    588583    PJSUA_UNLOCK(); 
    589584 
     585    pj_log_pop_indent(); 
     586 
    590587    return PJ_SUCCESS; 
    591588 
     
    606603    } 
    607604 
    608     pj_pool_release(tmp_pool); 
     605    if (tmp_pool) 
     606        pj_pool_release(tmp_pool); 
    609607    PJSUA_UNLOCK(); 
     608 
     609    pj_log_pop_indent(); 
    610610    return status; 
    611611} 
     
    669669    } 
    670670 
     671    PJ_LOG(4,(THIS_FILE, "Incoming %s", rdata->msg_info.info)); 
     672    pj_log_push_indent(); 
     673 
    671674    PJSUA_LOCK(); 
    672675 
     
    680683        PJ_LOG(2,(THIS_FILE,  
    681684                  "Unable to accept incoming call (too many calls)")); 
    682         PJSUA_UNLOCK(); 
    683         return PJ_TRUE; 
     685        goto on_return; 
    684686    } 
    685687 
     
    715717        } 
    716718 
    717         PJSUA_UNLOCK(); 
    718         return PJ_TRUE; 
     719        goto on_return; 
    719720    } 
    720721 
     
    746747            pjsip_endpt_respond(pjsua_var.endpt, NULL, rdata,  
    747748                                st_code, &st_text, NULL, NULL, NULL); 
    748             PJSUA_UNLOCK(); 
    749             return PJ_TRUE; 
     749            goto on_return; 
    750750        } 
    751751    } 
     
    794794            pjsip_endpt_respond(pjsua_var.endpt, NULL, rdata, 400,  
    795795                                &reason, &hdr_list, NULL, NULL); 
    796             PJSUA_UNLOCK(); 
    797             return PJ_TRUE; 
     796            goto on_return; 
    798797        } 
    799798 
     
    805804            pjsip_endpt_respond(pjsua_var.endpt, NULL, rdata, 400, &reason,  
    806805                                NULL, NULL, NULL); 
    807             PJSUA_UNLOCK(); 
    808             return PJ_TRUE; 
     806            goto on_return; 
    809807        } 
    810808 
     
    823821        pjsip_endpt_respond(pjsua_var.endpt, NULL, rdata, 
    824822                            sip_err_code, NULL, NULL, NULL, NULL); 
    825         PJSUA_UNLOCK(); 
    826         return PJ_TRUE; 
     823        goto on_return; 
    827824    } 
    828825 
     
    834831        pjsip_endpt_respond(pjsua_var.endpt, NULL, rdata, 
    835832                            sip_err_code, NULL, NULL, NULL, NULL); 
    836         PJSUA_UNLOCK(); 
    837         return PJ_TRUE; 
     833        goto on_return; 
    838834    } 
    839835 
     
    872868 
    873869        pjsua_media_channel_deinit(call->index); 
    874         PJSUA_UNLOCK(); 
    875         return PJ_TRUE; 
     870        goto on_return; 
    876871    }  
    877872 
     
    889884                                          NULL, NULL); 
    890885            pjsua_media_channel_deinit(call->index); 
    891             PJSUA_UNLOCK(); 
    892             return PJ_TRUE; 
     886            goto on_return; 
    893887        } 
    894888    } 
     
    901895                                      NULL, NULL); 
    902896        pjsua_media_channel_deinit(call->index); 
    903         PJSUA_UNLOCK(); 
    904         return PJ_TRUE; 
     897        goto on_return; 
    905898    } 
    906899 
     
    943936         */ 
    944937        pjsua_media_channel_deinit(call->index); 
    945         PJSUA_UNLOCK(); 
    946         return PJ_TRUE; 
     938        goto on_return; 
    947939    } 
    948940 
     
    959951        pjsua_media_channel_deinit(call->index); 
    960952 
    961         PJSUA_UNLOCK(); 
    962         return PJ_TRUE; 
     953        goto on_return; 
    963954    } 
    964955 
     
    1007998        } 
    1008999        pjsua_media_channel_deinit(call->index); 
    1009         PJSUA_UNLOCK(); 
    1010         return PJ_TRUE; 
     1000        goto on_return; 
    10111001 
    10121002    } else { 
     
    10141004        if (status != PJ_SUCCESS) { 
    10151005            pjsua_perror(THIS_FILE, "Unable to send 100 response", status); 
    1016             PJSUA_UNLOCK(); 
    1017             return PJ_TRUE; 
     1006            goto on_return; 
    10181007        } 
    10191008    } 
     
    10881077 
    10891078    /* This INVITE request has been handled. */ 
     1079on_return: 
     1080    pj_log_pop_indent(); 
    10901081    PJSUA_UNLOCK(); 
    10911082    return PJ_TRUE; 
     
    15781569{ 
    15791570    pjsua_call *call; 
    1580     pjsip_dialog *dlg; 
     1571    pjsip_dialog *dlg = NULL; 
    15811572    pjsip_tx_data *tdata; 
    15821573    pj_status_t status; 
     
    15851576                     PJ_EINVAL); 
    15861577 
     1578    PJ_LOG(4,(THIS_FILE, "Answering call %d: code=%d", call_id, code)); 
     1579    pj_log_push_indent(); 
     1580 
    15871581    status = acquire_call("pjsua_call_answer()", call_id, &call, &dlg); 
    15881582    if (status != PJ_SUCCESS) 
    1589         return status; 
     1583        goto on_return; 
    15901584 
    15911585    if (call->res_time.sec == 0) 
     
    16001594        pjsua_perror(THIS_FILE, "Error creating response",  
    16011595                     status); 
    1602         pjsip_dlg_dec_lock(dlg); 
    1603         return status; 
     1596        goto on_return; 
    16041597    } 
    16051598 
     
    16071600     * 200/OK and the media failed to start. 
    16081601     */ 
    1609     if (call->inv == NULL) { 
    1610         pjsip_dlg_dec_lock(dlg); 
    1611         return PJSIP_ESESSIONTERMINATED; 
    1612     } 
     1602    if (call->inv == NULL) 
     1603        goto on_return; 
    16131604 
    16141605    /* Add additional headers etc */ 
     
    16211612                     status); 
    16221613 
    1623     pjsip_dlg_dec_lock(dlg); 
    1624  
     1614on_return: 
     1615    if (dlg) pjsip_dlg_dec_lock(dlg); 
     1616    pj_log_pop_indent(); 
    16251617    return status; 
    16261618} 
     
    16371629{ 
    16381630    pjsua_call *call; 
    1639     pjsip_dialog *dlg; 
     1631    pjsip_dialog *dlg = NULL; 
    16401632    pj_status_t status; 
    16411633    pjsip_tx_data *tdata; 
     
    16501642                     PJ_EINVAL); 
    16511643 
     1644    PJ_LOG(4,(THIS_FILE, "Call %d hanging up: code=%d..", call_id, code)); 
     1645    pj_log_push_indent(); 
     1646 
    16521647    status = acquire_call("pjsua_call_hangup()", call_id, &call, &dlg); 
    16531648    if (status != PJ_SUCCESS) 
    1654         return status; 
     1649        goto on_return; 
    16551650 
    16561651    if (code==0) { 
     
    16681663                     "Failed to create end session message",  
    16691664                     status); 
    1670         pjsip_dlg_dec_lock(dlg); 
    1671         return status; 
     1665        goto on_return; 
    16721666    } 
    16731667 
     
    16761670     * with any provisional responses. 
    16771671     */ 
    1678     if (tdata == NULL) { 
    1679         pjsip_dlg_dec_lock(dlg); 
    1680         return PJ_SUCCESS; 
    1681     } 
     1672    if (tdata == NULL) 
     1673        goto on_return; 
    16821674 
    16831675    /* Add additional headers etc */ 
     
    16901682                     "Failed to send end session message",  
    16911683                     status); 
    1692         pjsip_dlg_dec_lock(dlg); 
    1693         return status; 
     1684        goto on_return; 
    16941685    } 
    16951686 
     
    17011692    } 
    17021693 
    1703     pjsip_dlg_dec_lock(dlg); 
    1704  
    1705     return PJ_SUCCESS; 
     1694on_return: 
     1695    if (dlg) pjsip_dlg_dec_lock(dlg); 
     1696    pj_log_pop_indent(); 
     1697    return status; 
    17061698} 
    17071699 
     
    17411733    pjmedia_sdp_session *sdp; 
    17421734    pjsua_call *call; 
    1743     pjsip_dialog *dlg; 
     1735    pjsip_dialog *dlg = NULL; 
    17441736    pjsip_tx_data *tdata; 
    17451737    pj_status_t status; 
     
    17481740                     PJ_EINVAL); 
    17491741 
     1742    PJ_LOG(4,(THIS_FILE, "Putting call %d on hold", call_id)); 
     1743    pj_log_push_indent(); 
     1744 
    17501745    status = acquire_call("pjsua_call_set_hold()", call_id, &call, &dlg); 
    17511746    if (status != PJ_SUCCESS) 
    1752         return status; 
    1753  
     1747        goto on_return; 
    17541748 
    17551749    if (call->inv->state != PJSIP_INV_STATE_CONFIRMED) { 
    17561750        PJ_LOG(3,(THIS_FILE, "Can not hold call that is not confirmed")); 
    1757         pjsip_dlg_dec_lock(dlg); 
    1758         return PJSIP_ESESSIONSTATE; 
     1751        status = PJSIP_ESESSIONSTATE; 
     1752        goto on_return; 
    17591753    } 
    17601754 
    17611755    status = create_sdp_of_call_hold(call, &sdp); 
    1762     if (status != PJ_SUCCESS) { 
    1763         pjsip_dlg_dec_lock(dlg); 
    1764         return status; 
    1765     } 
     1756    if (status != PJ_SUCCESS) 
     1757        goto on_return; 
    17661758 
    17671759    /* Create re-INVITE with new offer */ 
     
    17691761    if (status != PJ_SUCCESS) { 
    17701762        pjsua_perror(THIS_FILE, "Unable to create re-INVITE", status); 
    1771         pjsip_dlg_dec_lock(dlg); 
    1772         return status; 
     1763        goto on_return; 
    17731764    } 
    17741765 
     
    17801771    if (status != PJ_SUCCESS) { 
    17811772        pjsua_perror(THIS_FILE, "Unable to send re-INVITE", status); 
    1782         pjsip_dlg_dec_lock(dlg); 
    1783         return status; 
     1773        goto on_return; 
    17841774    } 
    17851775 
     
    17871777    call->local_hold = PJ_TRUE; 
    17881778 
    1789     pjsip_dlg_dec_lock(dlg); 
    1790  
    1791     return PJ_SUCCESS; 
     1779on_return: 
     1780    if (dlg) pjsip_dlg_dec_lock(dlg); 
     1781    pj_log_pop_indent(); 
     1782    return status; 
    17921783} 
    17931784 
     
    18041795    pjsip_tx_data *tdata; 
    18051796    pjsua_call *call; 
    1806     pjsip_dialog *dlg; 
     1797    pjsip_dialog *dlg = NULL; 
    18071798    pj_status_t status; 
    18081799 
     
    18111802                     PJ_EINVAL); 
    18121803 
     1804    PJ_LOG(4,(THIS_FILE, "Sending re-INVITE on call %d", call_id)); 
     1805    pj_log_push_indent(); 
     1806 
    18131807    status = acquire_call("pjsua_call_reinvite()", call_id, &call, &dlg); 
    18141808    if (status != PJ_SUCCESS) 
    1815         return status; 
     1809        goto on_return; 
    18161810 
    18171811    if (call->inv->state != PJSIP_INV_STATE_CONFIRMED) { 
    18181812        PJ_LOG(3,(THIS_FILE, "Can not re-INVITE call that is not confirmed")); 
    1819         pjsip_dlg_dec_lock(dlg); 
    1820         return PJSIP_ESESSIONSTATE; 
     1813        status = PJSIP_ESESSIONSTATE; 
     1814        goto on_return; 
    18211815    } 
    18221816 
     
    18331827        pjsua_perror(THIS_FILE, "Unable to get SDP from media endpoint",  
    18341828                     status); 
    1835         pjsip_dlg_dec_lock(dlg); 
    1836         return status; 
     1829        goto on_return; 
    18371830    } 
    18381831 
     
    18471840    if (status != PJ_SUCCESS) { 
    18481841        pjsua_perror(THIS_FILE, "Unable to create re-INVITE", status); 
    1849         pjsip_dlg_dec_lock(dlg); 
    1850         return status; 
     1842        goto on_return; 
    18511843    } 
    18521844 
     
    18581850    if (status != PJ_SUCCESS) { 
    18591851        pjsua_perror(THIS_FILE, "Unable to send re-INVITE", status); 
    1860         pjsip_dlg_dec_lock(dlg); 
    1861         return status; 
    1862     } 
    1863  
     1852        goto on_return; 
     1853    } 
     1854 
     1855on_return: 
    18641856    pjsip_dlg_dec_lock(dlg); 
    1865  
    1866     return PJ_SUCCESS; 
     1857    pj_log_pop_indent(); 
     1858    return status; 
    18671859} 
    18681860 
     
    18791871    pjsip_tx_data *tdata; 
    18801872    pjsua_call *call; 
    1881     pjsip_dialog *dlg; 
     1873    pjsip_dialog *dlg = NULL; 
    18821874    pj_status_t status; 
    18831875 
     
    18871879                     PJ_EINVAL); 
    18881880 
     1881    PJ_LOG(4,(THIS_FILE, "Sending UPDATE on call %d", call_id)); 
     1882    pj_log_push_indent(); 
     1883 
    18891884    status = acquire_call("pjsua_call_update()", call_id, &call, &dlg); 
    18901885    if (status != PJ_SUCCESS) 
    1891         return status; 
     1886        goto on_return; 
    18921887 
    18931888    /* Create SDP */ 
     
    18981893        pjsua_perror(THIS_FILE, "Unable to get SDP from media endpoint",  
    18991894                     status); 
    1900         pjsip_dlg_dec_lock(dlg); 
    1901         return status; 
     1895        goto on_return; 
    19021896    } 
    19031897 
     
    19121906    if (status != PJ_SUCCESS) { 
    19131907        pjsua_perror(THIS_FILE, "Unable to create UPDATE request", status); 
    1914         pjsip_dlg_dec_lock(dlg); 
    1915         return status; 
     1908        goto on_return; 
    19161909    } 
    19171910 
     
    19231916    if (status != PJ_SUCCESS) { 
    19241917        pjsua_perror(THIS_FILE, "Unable to send UPDATE request", status); 
    1925         pjsip_dlg_dec_lock(dlg); 
    1926         return status; 
     1918        goto on_return; 
    19271919    } 
    19281920 
    19291921    call->local_hold = PJ_FALSE; 
    19301922 
    1931     pjsip_dlg_dec_lock(dlg); 
    1932  
    1933     return PJ_SUCCESS; 
     1923on_return: 
     1924    if (dlg) pjsip_dlg_dec_lock(dlg); 
     1925    pj_log_pop_indent(); 
     1926    return status; 
    19341927} 
    19351928 
     
    19451938    pjsip_tx_data *tdata; 
    19461939    pjsua_call *call; 
    1947     pjsip_dialog *dlg; 
     1940    pjsip_dialog *dlg = NULL; 
    19481941    pjsip_generic_string_hdr *gs_hdr; 
    19491942    const pj_str_t str_ref_by = { "Referred-By", 11 }; 
     
    19521945 
    19531946 
    1954     PJ_ASSERT_RETURN(call_id>=0 && call_id<(int)pjsua_var.ua_cfg.max_calls, 
    1955                     PJ_EINVAL); 
     1947    PJ_ASSERT_RETURN(call_id>=0 && call_id<(int)pjsua_var.ua_cfg.max_calls && 
     1948                     dest, PJ_EINVAL); 
    19561949     
     1950    PJ_LOG(4,(THIS_FILE, "Transfering call %d to %.*s", call_id, 
     1951                         (int)dest->slen, dest->ptr)); 
     1952    pj_log_push_indent(); 
     1953 
    19571954    status = acquire_call("pjsua_call_xfer()", call_id, &call, &dlg); 
    19581955    if (status != PJ_SUCCESS) 
    1959         return status; 
    1960  
     1956        goto on_return; 
    19611957    
    19621958    /* Create xfer client subscription. */ 
     
    19671963    if (status != PJ_SUCCESS) { 
    19681964        pjsua_perror(THIS_FILE, "Unable to create xfer", status); 
    1969         pjsip_dlg_dec_lock(dlg); 
    1970         return status; 
     1965        goto on_return; 
    19711966    } 
    19721967 
     
    19801975    if (status != PJ_SUCCESS) { 
    19811976        pjsua_perror(THIS_FILE, "Unable to create REFER request", status); 
    1982         pjsip_dlg_dec_lock(dlg); 
    1983         return status; 
     1977        goto on_return; 
    19841978    } 
    19851979 
     
    19971991    if (status != PJ_SUCCESS) { 
    19981992        pjsua_perror(THIS_FILE, "Unable to send REFER request", status); 
    1999         pjsip_dlg_dec_lock(dlg); 
    2000         return status; 
     1993        goto on_return; 
    20011994    } 
    20021995 
     
    20051998     * may want to hold the INVITE, or terminate the invite, or whatever. 
    20061999     */ 
    2007  
    2008     pjsip_dlg_dec_lock(dlg); 
    2009  
    2010     return PJ_SUCCESS; 
     2000on_return: 
     2001    if (dlg) pjsip_dlg_dec_lock(dlg); 
     2002    pj_log_pop_indent(); 
     2003    return status; 
    20112004 
    20122005} 
     
    20362029                     PJ_EINVAL); 
    20372030     
     2031    PJ_LOG(4,(THIS_FILE, "Transfering call %d replacing with call %d", 
     2032                         call_id, dest_call_id)); 
     2033    pj_log_push_indent(); 
     2034 
    20382035    status = acquire_call("pjsua_call_xfer_replaces()", dest_call_id,  
    20392036                          &dest_call, &dest_dlg); 
    2040     if (status != PJ_SUCCESS) 
     2037    if (status != PJ_SUCCESS) { 
     2038        pj_log_pop_indent(); 
    20412039        return status; 
     2040    } 
    20422041         
    20432042    /*  
     
    20462045 
    20472046    /* Make sure we have sufficient buffer's length */ 
    2048     PJ_ASSERT_RETURN( dest_dlg->remote.info_str.slen + 
     2047    PJ_ASSERT_ON_FAIL(dest_dlg->remote.info_str.slen + 
    20492048                      dest_dlg->call_id->id.slen + 
    20502049                      dest_dlg->remote.info->tag.slen + 
    20512050                      dest_dlg->local.info->tag.slen + 32  
    2052                       < (long)sizeof(str_dest_buf), PJSIP_EURITOOLONG); 
     2051                      < (long)sizeof(str_dest_buf), 
     2052                      { status=PJSIP_EURITOOLONG; goto on_error; }); 
    20532053 
    20542054    /* Print URI */ 
     
    20592059    len = pjsip_uri_print(PJSIP_URI_IN_REQ_URI, uri,  
    20602060                          str_dest_buf+1, sizeof(str_dest_buf)-1); 
    2061     if (len < 0) 
    2062         return PJSIP_EURITOOLONG; 
     2061    if (len < 0) { 
     2062        status = PJSIP_EURITOOLONG; 
     2063        goto on_error; 
     2064    } 
    20632065 
    20642066    str_dest.slen += len; 
     
    20812083                           dest_dlg->local.info->tag.ptr); 
    20822084 
    2083     PJ_ASSERT_RETURN(len > 0 && len <= (int)sizeof(str_dest_buf)-str_dest.slen, 
    2084                      PJSIP_EURITOOLONG); 
     2085    PJ_ASSERT_ON_FAIL(len > 0 && len <= (int)sizeof(str_dest_buf)-str_dest.slen, 
     2086                      { status=PJSIP_EURITOOLONG; goto on_error; }); 
    20852087     
    20862088    str_dest.ptr = str_dest_buf; 
     
    20892091    pjsip_dlg_dec_lock(dest_dlg); 
    20902092     
    2091     return pjsua_call_xfer(call_id, &str_dest, msg_data); 
     2093    status = pjsua_call_xfer(call_id, &str_dest, msg_data); 
     2094 
     2095    pj_log_pop_indent(); 
     2096    return status; 
     2097 
     2098on_error: 
     2099    if (dest_dlg) pjsip_dlg_dec_lock(dest_dlg); 
     2100    pj_log_pop_indent(); 
     2101    return status; 
    20922102} 
    20932103 
     
    21002110{ 
    21012111    pjsua_call *call; 
    2102     pjsip_dialog *dlg; 
     2112    pjsip_dialog *dlg = NULL; 
    21032113    pj_status_t status; 
    21042114 
     
    21062116                     PJ_EINVAL); 
    21072117     
     2118    PJ_LOG(4,(THIS_FILE, "Call %d dialing DTMF %.*s", 
     2119                         call_id, (int)digits->slen, digits->ptr)); 
     2120    pj_log_push_indent(); 
     2121 
    21082122    status = acquire_call("pjsua_call_dial_dtmf()", call_id, &call, &dlg); 
    21092123    if (status != PJ_SUCCESS) 
    2110         return status; 
     2124        goto on_return; 
    21112125 
    21122126    if (!pjsua_call_has_media(call_id)) { 
    21132127        PJ_LOG(3,(THIS_FILE, "Media is not established yet!")); 
    2114         pjsip_dlg_dec_lock(dlg); 
    2115         return PJ_EINVALIDOP; 
     2128        status = PJ_EINVALIDOP; 
     2129        goto on_return; 
    21162130    } 
    21172131 
     
    21192133                call->media[call->audio_idx].strm.a.stream, digits); 
    21202134 
    2121     pjsip_dlg_dec_lock(dlg); 
    2122  
     2135on_return: 
     2136    if (dlg) pjsip_dlg_dec_lock(dlg); 
     2137    pj_log_pop_indent(); 
    21232138    return status; 
    21242139} 
     
    21352150{ 
    21362151    pjsua_call *call; 
    2137     pjsip_dialog *dlg; 
     2152    pjsip_dialog *dlg = NULL; 
    21382153    const pj_str_t mime_text_plain = pj_str("text/plain"); 
    21392154    pjsip_media_type ctype; 
     
    21422157    pj_status_t status; 
    21432158 
    2144  
    21452159    PJ_ASSERT_RETURN(call_id>=0 && call_id<(int)pjsua_var.ua_cfg.max_calls, 
    21462160                     PJ_EINVAL); 
    21472161 
     2162    PJ_LOG(4,(THIS_FILE, "Call %d sending %d bytes MESSAGE..", 
     2163                          call_id, (int)content->slen)); 
     2164    pj_log_push_indent(); 
     2165 
    21482166    status = acquire_call("pjsua_call_send_im()", call_id, &call, &dlg); 
    21492167    if (status != PJ_SUCCESS) 
    2150         return status; 
     2168        goto on_return; 
    21512169     
    21522170    /* Set default media type if none is specified */ 
     
    22002218 
    22012219on_return: 
    2202     pjsip_dlg_dec_lock(dlg); 
     2220    if (dlg) pjsip_dlg_dec_lock(dlg); 
     2221    pj_log_pop_indent(); 
    22032222    return status; 
    22042223} 
     
    22132232{ 
    22142233    pjsua_call *call; 
    2215     pjsip_dialog *dlg; 
     2234    pjsip_dialog *dlg = NULL; 
    22162235    pjsip_tx_data *tdata; 
    22172236    pj_status_t status; 
     
    22202239                     PJ_EINVAL); 
    22212240 
     2241    PJ_LOG(4,(THIS_FILE, "Call %d sending typing indication..", 
     2242                          call_id)); 
     2243    pj_log_push_indent(); 
     2244 
    22222245    status = acquire_call("pjsua_call_send_typing_ind", call_id, &call, &dlg); 
    22232246    if (status != PJ_SUCCESS) 
    2224         return status; 
     2247        goto on_return; 
    22252248 
    22262249    /* Create request message. */ 
     
    22472270 
    22482271on_return: 
    2249     pjsip_dlg_dec_lock(dlg); 
     2272    if (dlg) pjsip_dlg_dec_lock(dlg); 
     2273    pj_log_pop_indent(); 
    22502274    return status; 
    22512275} 
     
    22602284{ 
    22612285    pjsua_call *call; 
    2262     pjsip_dialog *dlg; 
     2286    pjsip_dialog *dlg = NULL; 
    22632287    pjsip_method method; 
    22642288    pjsip_tx_data *tdata; 
     
    22682292                     PJ_EINVAL); 
    22692293 
     2294    PJ_LOG(4,(THIS_FILE, "Call %d sending %.*s request..", 
     2295                          call_id, (int)method_str->slen, method_str->ptr)); 
     2296    pj_log_push_indent(); 
     2297 
    22702298    status = acquire_call("pjsua_call_send_request", call_id, &call, &dlg); 
    22712299    if (status != PJ_SUCCESS) 
    2272         return status; 
     2300        goto on_return; 
    22732301 
    22742302    /* Init method */ 
     
    22932321 
    22942322on_return: 
    2295     pjsip_dlg_dec_lock(dlg); 
     2323    if (dlg) pjsip_dlg_dec_lock(dlg); 
     2324    pj_log_pop_indent(); 
    22962325    return status; 
    22972326} 
     
    23042333{ 
    23052334    unsigned i; 
     2335 
     2336    PJ_LOG(4,(THIS_FILE, "Hangup all calls..")); 
     2337    pj_log_push_indent(); 
    23062338 
    23072339    PJSUA_LOCK(); 
     
    23132345 
    23142346    PJSUA_UNLOCK(); 
     2347    pj_log_pop_indent(); 
    23152348} 
    23162349 
     
    26092642        return PJ_SUCCESS; 
    26102643 
    2611     PJ_LOG(3, (THIS_FILE, "Got answer with multiple codecs, scheduling " 
     2644    PJ_LOG(4, (THIS_FILE, "Got answer with multiple codecs, scheduling " 
    26122645                          "updating media session to use only one codec..")); 
    26132646 
     
    26352668    pjsua_call *call; 
    26362669 
     2670    pj_log_push_indent(); 
    26372671    PJSUA_LOCK(); 
    26382672 
     
    26412675    if (!call) { 
    26422676        PJSUA_UNLOCK(); 
     2677        pj_log_pop_indent(); 
    26432678        return; 
    26442679    } 
     
    27972832 
    27982833    PJSUA_UNLOCK(); 
     2834    pj_log_pop_indent(); 
    27992835} 
    28002836 
     
    29052941    //const pj_str_t st_update = {"UPDATE", 6}; 
    29062942 
     2943    pj_log_push_indent(); 
    29072944    PJSUA_LOCK(); 
    29082945 
     
    29302967        } 
    29312968 
    2932         PJSUA_UNLOCK(); 
    2933         return; 
     2969        goto on_return; 
    29342970    } 
    29352971 
     
    29422978                     status); 
    29432979        //call_disconnect(inv, PJSIP_SC_UNSUPPORTED_MEDIA_TYPE); 
    2944         PJSUA_UNLOCK(); 
    2945         return; 
     2980        goto on_return; 
    29462981    } 
    29472982 
     
    29522987                     status); 
    29532988        //call_disconnect(inv, PJSIP_SC_UNSUPPORTED_MEDIA_TYPE); 
    2954         PJSUA_UNLOCK(); 
    2955         return; 
     2989        goto on_return; 
    29562990    } 
    29572991 
     
    29713005         */ 
    29723006        /*pjsua_media_channel_deinit(call->index);*/ 
    2973         PJSUA_UNLOCK(); 
    2974         return; 
     3007        goto on_return; 
    29753008    } 
    29763009 
     
    29853018        pjsua_var.ua_cfg.cb.on_call_media_state(call->index); 
    29863019 
    2987  
     3020on_return: 
    29883021    PJSUA_UNLOCK(); 
     3022    pj_log_pop_indent(); 
    29893023} 
    29903024 
     
    31053139    PJ_LOG(4,(THIS_FILE, "Call %d: received updated media offer", 
    31063140              call->index)); 
     3141    pj_log_push_indent(); 
    31073142 
    31083143    status = pjsua_media_channel_create_sdp(call->index,  
     
    31113146    if (status != PJ_SUCCESS) { 
    31123147        pjsua_perror(THIS_FILE, "Unable to create local SDP", status); 
    3113         PJSUA_UNLOCK(); 
    3114         return; 
     3148        goto on_return; 
    31153149    } 
    31163150 
     
    31553189    if (status != PJ_SUCCESS) { 
    31563190        pjsua_perror(THIS_FILE, "Unable to set answer", status); 
    3157         PJSUA_UNLOCK(); 
    3158         return; 
    3159     } 
    3160  
     3191        goto on_return; 
     3192    } 
     3193 
     3194on_return: 
    31613195    PJSUA_UNLOCK(); 
     3196    pj_log_pop_indent(); 
    31623197} 
    31633198 
     
    31723207    pj_status_t status; 
    31733208 
     3209    pj_log_push_indent(); 
    31743210    PJSUA_LOCK(); 
    31753211 
     
    31933229    if (status != PJ_SUCCESS) { 
    31943230        pjsua_perror(THIS_FILE, "Unable to create local SDP", status); 
    3195         PJSUA_UNLOCK(); 
    3196         return; 
    3197     } 
    3198  
     3231        goto on_return; 
     3232    } 
     3233 
     3234on_return: 
    31993235    PJSUA_UNLOCK(); 
     3236    pj_log_pop_indent(); 
    32003237} 
    32013238 
     
    32093246     
    32103247    PJ_UNUSED_ARG(event); 
     3248 
     3249    pj_log_push_indent(); 
    32113250 
    32123251    /* 
     
    32973336        if (!call || !event || !pjsua_var.ua_cfg.cb.on_call_transfer_status) { 
    32983337            /* Application is not interested with call progress status */ 
    3299             return; 
     3338            goto on_return; 
    33003339        } 
    33013340 
     
    33143353                PJ_LOG(2,(THIS_FILE,  
    33153354                          "Warning: received NOTIFY without message body")); 
    3316                 return; 
     3355                goto on_return; 
    33173356            } 
    33183357 
     
    33243363                          "Warning: received NOTIFY with non message/sipfrag " 
    33253364                          "content")); 
    3326                 return; 
     3365                goto on_return; 
    33273366            } 
    33283367 
     
    33343373                          "Warning: received NOTIFY with invalid " 
    33353374                          "message/sipfrag content")); 
    3336                 return; 
     3375                goto on_return; 
    33373376            } 
    33383377 
     
    33663405        } 
    33673406    } 
     3407 
     3408on_return: 
     3409    pj_log_pop_indent(); 
    33683410} 
    33693411 
     
    33753417static void xfer_server_on_evsub_state( pjsip_evsub *sub, pjsip_event *event) 
    33763418{ 
    3377      
    33783419    PJ_UNUSED_ARG(event); 
     3420 
     3421    pj_log_push_indent(); 
    33793422 
    33803423    /* 
     
    33873430        call = (pjsua_call*) pjsip_evsub_get_mod_data(sub, pjsua_var.mod.id); 
    33883431        if (!call) 
    3389             return; 
     3432            goto on_return; 
    33903433 
    33913434        pjsip_evsub_set_mod_data(sub, pjsua_var.mod.id, NULL); 
     
    33943437        PJ_LOG(4,(THIS_FILE, "Xfer server subscription terminated")); 
    33953438    } 
     3439 
     3440on_return: 
     3441    pj_log_pop_indent(); 
    33963442} 
    33973443 
     
    34203466    pjsip_evsub *sub; 
    34213467 
     3468    pj_log_push_indent(); 
     3469 
    34223470    existing_call = (pjsua_call*) inv->dlg->mod_data[pjsua_var.mod.id]; 
    34233471 
     
    34323480        PJ_LOG(4,(THIS_FILE, "Received REFER without Refer-To header!")); 
    34333481        pjsip_dlg_respond( inv->dlg, rdata, 400, NULL, NULL, NULL); 
    3434         return; 
     3482        goto on_return; 
    34353483    } 
    34363484 
     
    34633511        /* Application rejects call transfer request */ 
    34643512        pjsip_dlg_respond( inv->dlg, rdata, code, NULL, NULL, NULL); 
    3465         return; 
     3513        goto on_return; 
    34663514    } 
    34673515 
     
    34853533            pjsua_perror(THIS_FILE, "Unable to create 2xx response to REFER", 
    34863534                         status); 
    3487             return; 
     3535            goto on_return; 
    34883536        } 
    34893537 
     
    35013549            pjsua_perror(THIS_FILE, "Unable to create 2xx response to REFER", 
    35023550                         status); 
    3503             return; 
     3551            goto on_return; 
    35043552        } 
    35053553 
     
    35233571            pjsua_perror(THIS_FILE, "Unable to create xfer uas", status); 
    35243572            pjsip_dlg_respond( inv->dlg, rdata, 500, NULL, NULL, NULL); 
    3525             return; 
     3573            goto on_return; 
    35263574        } 
    35273575 
     
    35503598            pjsua_perror(THIS_FILE, "Unable to create NOTIFY to REFER",  
    35513599                         status); 
    3552             return; 
     3600            goto on_return; 
    35533601        } 
    35543602 
     
    35573605        if (status != PJ_SUCCESS) { 
    35583606            pjsua_perror(THIS_FILE, "Unable to send NOTIFY to REFER", status); 
    3559             return; 
     3607            goto on_return; 
    35603608        } 
    35613609    } 
     
    35953643                pjsua_perror(THIS_FILE, "Unable to create NOTIFY to REFER",  
    35963644                              status); 
    3597                 return; 
     3645                goto on_return; 
    35983646            } 
    35993647            status = pjsip_xfer_send_request(sub, tdata); 
     
    36013649                pjsua_perror(THIS_FILE, "Unable to send NOTIFY to REFER",  
    36023650                              status); 
    3603                 return; 
     3651                goto on_return; 
    36043652            } 
    36053653        } 
    3606         return; 
     3654        goto on_return; 
    36073655    } 
    36083656 
     
    36183666                                 &pjsua_var.calls[new_call]); 
    36193667    } 
     3668 
     3669on_return: 
     3670    pj_log_pop_indent(); 
    36203671} 
    36213672 
     
    36343685    pjsua_call *call; 
    36353686 
     3687    pj_log_push_indent(); 
    36363688    PJSUA_LOCK(); 
    36373689 
    36383690    call = (pjsua_call*) inv->dlg->mod_data[pjsua_var.mod.id]; 
    36393691 
    3640     if (call == NULL) { 
    3641         PJSUA_UNLOCK(); 
    3642         return; 
    3643     } 
     3692    if (call == NULL) 
     3693        goto on_return; 
    36443694 
    36453695    if (call->inv == NULL) { 
     
    36493699         * receive another REFER for this call. 
    36503700         */ 
    3651         PJSUA_UNLOCK(); 
    3652         return; 
     3701        goto on_return; 
    36533702    } 
    36543703 
     
    36953744            pjsip_dlg_respond( inv->dlg, rdata, PJSIP_SC_NOT_ACCEPTABLE_HERE,  
    36963745                               NULL, &hdr_list, NULL ); 
    3697             PJSUA_UNLOCK(); 
    3698             return; 
     3746            goto on_return; 
    36993747        } 
    37003748 
     
    37313779    } 
    37323780 
    3733  
     3781on_return: 
    37343782    PJSUA_UNLOCK(); 
     3783    pj_log_pop_indent(); 
    37353784} 
    37363785 
     
    37443793    pjsip_redirect_op op; 
    37453794 
     3795    pj_log_push_indent(); 
    37463796    PJSUA_LOCK(); 
    37473797 
     
    37583808 
    37593809    PJSUA_UNLOCK(); 
     3810    pj_log_pop_indent(); 
    37603811 
    37613812    return op; 
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_core.c

    r3666 r3753  
    8484    cfg->decor = PJ_LOG_HAS_SENDER | PJ_LOG_HAS_TIME |  
    8585                 PJ_LOG_HAS_MICRO_SEC | PJ_LOG_HAS_NEWLINE | 
    86                  PJ_LOG_HAS_SPACE; 
     86                 PJ_LOG_HAS_SPACE | PJ_LOG_HAS_THREAD_SWC | 
     87                 PJ_LOG_HAS_INDENT; 
    8788#if defined(PJ_WIN32) && PJ_WIN32 != 0 
    8889    cfg->decor |= PJ_LOG_HAS_COLOR; 
     
    629630    PJ_ASSERT_RETURN(status == PJ_SUCCESS, status); 
    630631 
     632    pj_log_push_indent(); 
     633 
    631634    /* Init random seed */ 
    632635    init_random_seed(); 
     
    660663                                       &pjsua_var.mutex); 
    661664    if (status != PJ_SUCCESS) { 
     665        pj_log_pop_indent(); 
    662666        pjsua_perror(THIS_FILE, "Unable to create mutex", status); 
    663667        return status; 
     
    673677 
    674678    pjsua_set_state(PJSUA_STATE_CREATED); 
    675  
     679    pj_log_pop_indent(); 
    676680    return PJ_SUCCESS; 
    677681} 
     
    694698    pj_status_t status; 
    695699 
     700    pj_log_push_indent(); 
    696701 
    697702    /* Create default configurations when the config is not supplied */ 
     
    711716        status = pjsua_reconfigure_logging(log_cfg); 
    712717        if (status != PJ_SUCCESS) 
    713             return status; 
     718            goto on_error; 
    714719    } 
    715720 
     
    735740        if (status != PJ_SUCCESS) { 
    736741            pjsua_perror(THIS_FILE, "Error creating resolver", status); 
    737             return status; 
     742            goto on_error; 
    738743        } 
    739744 
     
    744749        if (status != PJ_SUCCESS) { 
    745750            pjsua_perror(THIS_FILE, "Error setting nameserver", status); 
    746             return status; 
     751            goto on_error; 
    747752        } 
    748753 
     
    751756        if (status != PJ_SUCCESS) { 
    752757            pjsua_perror(THIS_FILE, "Error setting DNS resolver", status); 
    753             return status; 
     758            goto on_error; 
    754759        } 
    755760 
     
    833838            pjsua_perror(THIS_FILE, "Invalid outbound proxy URI", 
    834839                         PJSIP_EINVALIDURI); 
    835             return PJSIP_EINVALIDURI; 
     840            status = PJSIP_EINVALIDURI; 
     841            goto on_error; 
    836842        } 
    837843 
     
    841847                !PJSIP_URI_SCHEME_IS_SIP(r->name_addr.uri)) 
    842848            { 
    843                 return PJSIP_EINVALIDSCHEME; 
     849                status = PJSIP_EINVALIDSCHEME; 
     850                goto on_error; 
    844851            } 
    845852            sip_url = (pjsip_sip_uri*)r->name_addr.uri; 
     
    872879    if (status != PJ_SUCCESS && status != PJ_EPENDING) { 
    873880        pjsua_perror(THIS_FILE, "Error resolving STUN server", status); 
    874         return status; 
     881        goto on_error; 
    875882    } 
    876883 
     
    942949 
    943950    pjsua_set_state(PJSUA_STATE_INIT); 
    944  
     951    pj_log_pop_indent(); 
    945952    return PJ_SUCCESS; 
    946953 
    947954on_error: 
    948955    pjsua_destroy(); 
     956    pj_log_pop_indent(); 
    949957    return status; 
    950958} 
     
    13231331        PJ_LOG(4,(THIS_FILE, "Shutting down...")); 
    13241332 
     1333        pj_log_push_indent(); 
     1334 
    13251335        /* Terminate all calls. */ 
    13261336        pjsua_call_hangup_all(); 
     
    14781488        } 
    14791489 
     1490        pj_log_pop_indent(); 
     1491 
    14801492        /* Shutdown PJLIB */ 
    14811493        pj_shutdown(); 
     
    15241536 
    15251537    pjsua_set_state(PJSUA_STATE_STARTING); 
     1538    pj_log_push_indent(); 
    15261539 
    15271540    status = pjsua_call_subsys_start(); 
    15281541    if (status != PJ_SUCCESS) 
    1529         return status; 
     1542        goto on_return; 
    15301543 
    15311544    status = pjsua_media_subsys_start(); 
    15321545    if (status != PJ_SUCCESS) 
    1533         return status; 
     1546        goto on_return; 
    15341547 
    15351548    status = pjsua_pres_start(); 
    15361549    if (status != PJ_SUCCESS) 
    1537         return status; 
     1550        goto on_return; 
    15381551 
    15391552    pjsua_set_state(PJSUA_STATE_RUNNING); 
    15401553 
    1541     return PJ_SUCCESS; 
     1554on_return: 
     1555    pj_log_pop_indent(); 
     1556    return status; 
    15421557} 
    15431558 
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_media.c

    r3714 r3753  
    7373    PJ_UNUSED_ARG(codec_id); 
    7474 
     75    pj_log_push_indent(); 
     76 
    7577    /* Specify which audio device settings are save-able */ 
    7678    pjsua_var.aud_svmask = 0xFFFFFFFF; 
     
    111113                     "Media stack initialization has returned error",  
    112114                     status); 
    113         return status; 
     115        goto on_error; 
    114116    } 
    115117 
     
    138140                pjsua_perror(THIS_FILE, "Error querying audio device info", 
    139141                             status); 
    140                 return status; 
     142                goto on_error; 
    141143            } 
    142144             
     
    175177    if (status != PJ_SUCCESS) { 
    176178        PJ_PERROR(1,(THIS_FILE, status, "Error registering codecs")); 
    177         return status; 
     179        goto on_error; 
    178180    } 
    179181 
     
    229231        pjsua_perror(THIS_FILE, "Error creating conference bridge",  
    230232                     status); 
    231         return status; 
     233        goto on_error; 
    232234    } 
    233235 
     
    251253        pjsua_perror(THIS_FILE, "Error initializing SRTP library",  
    252254                     status); 
    253         return status; 
     255        goto on_error; 
    254256    } 
    255257#endif 
     
    259261    status = pjsua_vid_subsys_init(); 
    260262    if (status != PJ_SUCCESS) 
    261         return status; 
     263        goto on_error; 
    262264#endif 
    263265 
     266    pj_log_pop_indent(); 
    264267    return PJ_SUCCESS; 
     268 
     269on_error: 
     270    pj_log_pop_indent(); 
     271    return status; 
    265272} 
    266273 
     
    345352    pj_status_t status; 
    346353 
     354    pj_log_push_indent(); 
     355 
    347356#if DISABLED_FOR_TICKET_1185 
    348357    /* Create media for calls, if none is specified */ 
     
    355364 
    356365        status = pjsua_media_transports_create(&transport_cfg); 
    357         if (status != PJ_SUCCESS) 
     366        if (status != PJ_SUCCESS) { 
     367            pj_log_pop_indent(); 
    358368            return status; 
     369        } 
    359370    } 
    360371#endif 
     
    366377#if PJMEDIA_HAS_VIDEO 
    367378    status = pjsua_vid_subsys_start(); 
    368     if (status != PJ_SUCCESS) 
     379    if (status != PJ_SUCCESS) { 
     380        pj_log_pop_indent(); 
    369381        return status; 
     382    } 
    370383#endif 
    371384 
     
    376389    } 
    377390 
     391    pj_log_pop_indent(); 
    378392    return PJ_SUCCESS; 
    379393} 
     
    388402 
    389403    PJ_LOG(4,(THIS_FILE, "Shutting down media..")); 
     404    pj_log_push_indent(); 
    390405 
    391406    close_snd_dev(); 
     
    451466    /* Reset RTP port */ 
    452467    next_rtp_port = 0; 
     468 
     469    pj_log_pop_indent(); 
    453470 
    454471    return PJ_SUCCESS; 
     
    13641381        return PJ_EBUSY; 
    13651382 
     1383    PJ_LOG(4,(THIS_FILE, "Call %d: initializing media..", call_id)); 
     1384    pj_log_push_indent(); 
     1385 
    13661386#if DISABLED_FOR_TICKET_1185 
    13671387    /* Return error if media transport has not been created yet 
     
    13701390    for (i=0; i<call->med_cnt; ++i) { 
    13711391        if (call->media[i].tp == NULL) { 
    1372             return PJ_EBUSY; 
     1392            status = PJ_EBUSY; 
     1393            goto on_error; 
    13731394        } 
    13741395    } 
     
    13861407            if (sip_err_code) *sip_err_code = PJSIP_SC_NOT_ACCEPTABLE_HERE; 
    13871408            pjsua_media_channel_deinit(call_id); 
    1388             return PJSIP_ERRNO_FROM_SIP_STATUS(PJSIP_SC_NOT_ACCEPTABLE_HERE); 
     1409            status = PJSIP_ERRNO_FROM_SIP_STATUS(PJSIP_SC_NOT_ACCEPTABLE_HERE); 
     1410            goto on_error; 
    13891411        } 
    13901412 
     
    14261448        if (sip_err_code) *sip_err_code = PJSIP_SC_NOT_ACCEPTABLE_HERE; 
    14271449        pjsua_media_channel_deinit(call_id); 
    1428         return PJSIP_ERRNO_FROM_SIP_STATUS(PJSIP_SC_NOT_ACCEPTABLE_HERE); 
     1450        status = PJSIP_ERRNO_FROM_SIP_STATUS(PJSIP_SC_NOT_ACCEPTABLE_HERE); 
     1451        goto on_error; 
    14291452    } 
    14301453 
     
    14631486            if (status != PJ_SUCCESS) { 
    14641487                pjsua_media_channel_deinit(call_id); 
    1465                 return status; 
     1488                goto on_error; 
    14661489            } 
    14671490        } else { 
     
    15011524                if (sip_err_code) *sip_err_code = PJSIP_SC_NOT_ACCEPTABLE; 
    15021525                pjsua_media_channel_deinit(call_id); 
    1503                 return status; 
     1526                goto on_error; 
    15041527            } 
    15051528 
     
    15081531    } 
    15091532 
     1533    pj_log_pop_indent(); 
    15101534    return PJ_SUCCESS; 
     1535 
     1536on_error: 
     1537    pj_log_pop_indent(); 
     1538    return status; 
    15111539} 
    15121540 
     
    17911819    unsigned mi; 
    17921820 
     1821    pj_log_push_indent(); 
     1822 
    17931823    for (mi=0; mi<call->med_cnt; ++mi) { 
    17941824        pjsua_call_media *call_med = &call->media[mi]; 
     
    18391869        call_med->state = PJSUA_CALL_MEDIA_NONE; 
    18401870    } 
     1871 
     1872    pj_log_pop_indent(); 
    18411873} 
    18421874 
     
    18451877    pjsua_call *call = &pjsua_var.calls[call_id]; 
    18461878    unsigned mi; 
     1879 
     1880    PJ_LOG(4,(THIS_FILE, "Call %d: deinitializing media..", call_id)); 
     1881    pj_log_push_indent(); 
    18471882 
    18481883    stop_media_session(call_id); 
     
    18691904 
    18701905    check_snd_dev_idle(); 
     1906    pj_log_pop_indent(); 
    18711907 
    18721908    return PJ_SUCCESS; 
     
    18811917{ 
    18821918    PJ_UNUSED_ARG(strm); 
     1919 
     1920    pj_log_push_indent(); 
    18831921 
    18841922    /* For discussions about call mutex protection related to this  
     
    18921930        pjsua_var.ua_cfg.cb.on_dtmf_digit(call_id, digit); 
    18931931    } 
     1932 
     1933    pj_log_pop_indent(); 
    18941934} 
    18951935 
     
    19051945    unsigned strm_idx = call_med->idx; 
    19061946    pj_status_t status; 
     1947 
     1948    PJ_LOG(4,(THIS_FILE,"Audio channel update..")); 
     1949    pj_log_push_indent(); 
    19071950     
    19081951    status = pjmedia_stream_info_from_sdp(si, tmp_pool, pjsua_var.med_endpt, 
    19091952                                          local_sdp, remote_sdp, strm_idx); 
    19101953    if (status != PJ_SUCCESS) 
    1911         return status; 
     1954        goto on_return; 
    19121955 
    19131956    /* Check if no media is active */ 
     
    19271970                                               remote_sdp, strm_idx); 
    19281971        if (status != PJ_SUCCESS) 
    1929             return status; 
     1972            goto on_return; 
    19301973 
    19311974        call_med->tp_st = PJSUA_MED_TP_RUNNING; 
     
    19922035                                       &call_med->strm.a.stream); 
    19932036        if (status != PJ_SUCCESS) { 
    1994             return status; 
     2037            goto on_return; 
    19952038        } 
    19962039 
     
    19982041        status = pjmedia_stream_start(call_med->strm.a.stream); 
    19992042        if (status != PJ_SUCCESS) { 
    2000             return status; 
     2043            goto on_return; 
    20012044        } 
    20022045 
     
    20462089                                            &call_med->strm.a.conf_slot); 
    20472090            if (status != PJ_SUCCESS) { 
    2048                 return status; 
     2091                goto on_return; 
    20492092            } 
    20502093        } 
     
    20932136        if (len > 0) 
    20942137            info_len += len; 
    2095         PJ_LOG(4,(THIS_FILE,"Media updates%s", info)); 
    2096     } 
    2097  
    2098     return PJ_SUCCESS; 
     2138        PJ_LOG(4,(THIS_FILE,"Audio updated%s", info)); 
     2139    } 
     2140 
     2141on_return: 
     2142    pj_log_pop_indent(); 
     2143    return status; 
    20992144} 
    21002145 
     
    21202165    if (pjsua_get_state() != PJSUA_STATE_RUNNING) 
    21212166        return PJ_EBUSY; 
     2167 
     2168    PJ_LOG(4,(THIS_FILE, "Call %d: updating media..", call_id)); 
     2169    pj_log_push_indent(); 
    21222170 
    21232171    /* Destroy existing media session, if any. */ 
     
    21832231            PJ_LOG(1,(THIS_FILE, "Error updating media for call %d: " 
    21842232                      "invalid media index %d in SDP", call_id, mi)); 
    2185             return PJMEDIA_SDP_EINSDP; 
     2233            status = PJMEDIA_SDP_EINSDP; 
     2234            goto on_error; 
    21862235#endif 
    21872236        } 
     
    22362285        status = pjmedia_sdp_neg_set_remote_offer(tmp_pool, neg, remote_sdp); 
    22372286        if (status != PJ_SUCCESS) 
    2238             return status; 
     2287            goto on_error; 
    22392288 
    22402289        status = pjmedia_sdp_neg_set_local_answer(tmp_pool, neg, local_sdp); 
    22412290        if (status != PJ_SUCCESS) 
    2242             return status; 
     2291            goto on_error; 
    22432292 
    22442293        status = pjmedia_sdp_neg_negotiate(tmp_pool, neg, 0); 
    22452294        if (status != PJ_SUCCESS) 
    2246             return status; 
    2247     } 
    2248  
     2295            goto on_error; 
     2296    } 
     2297 
     2298    pj_log_pop_indent(); 
    22492299    return (got_media? PJ_SUCCESS : PJMEDIA_SDPNEG_ENOMEDIA); 
     2300 
     2301on_error: 
     2302    pj_log_pop_indent(); 
     2303    return status; 
    22502304} 
    22512305 
     
    23582412                                        pjsua_conf_port_id sink) 
    23592413{ 
     2414    pj_status_t status = PJ_SUCCESS; 
     2415 
     2416    PJ_LOG(4,(THIS_FILE, "%s connect: %d --> %d", 
     2417              (pjsua_var.is_mswitch ? "Switch" : "Conf"), 
     2418              source, sink)); 
     2419    pj_log_push_indent(); 
     2420 
    23602421    /* If sound device idle timer is active, cancel it first. */ 
    23612422    PJSUA_LOCK(); 
     
    23782439        unsigned peer_id; 
    23792440        pj_bool_t need_reopen = PJ_FALSE; 
    2380         pj_status_t status; 
    23812441 
    23822442        peer_id = (source!=0)? source : sink; 
     
    24202480                    pjsua_perror(THIS_FILE, "Error opening sound device", 
    24212481                                 status); 
    2422                     return status; 
     2482                    goto on_return; 
    24232483                } 
    24242484 
     
    24342494                    pjsua_perror(THIS_FILE, "Error opening sound device", 
    24352495                                 status); 
    2436                     return status; 
     2496                    goto on_return; 
    24372497                } 
    24382498            } else { 
     
    24432503                    pjsua_perror(THIS_FILE, "Error opening sound device", 
    24442504                                 status); 
    2445                     return status; 
     2505                    goto on_return; 
    24462506                } 
    24472507            } 
     
    24682528            if (status != PJ_SUCCESS) { 
    24692529                pjsua_perror(THIS_FILE, "Error opening sound device", status); 
    2470                 return status; 
     2530                goto on_return; 
    24712531            } 
    24722532        } else if (pjsua_var.no_snd && !pjsua_var.snd_is_on) { 
     
    24792539    } 
    24802540 
    2481     return pjmedia_conf_connect_port(pjsua_var.mconf, source, sink, 0); 
     2541    status = pjmedia_conf_connect_port(pjsua_var.mconf, source, sink, 0); 
     2542 
     2543on_return: 
     2544    pj_log_pop_indent(); 
     2545    return status; 
    24822546} 
    24832547 
     
    24912555    pj_status_t status; 
    24922556 
     2557    PJ_LOG(4,(THIS_FILE, "%s disconnect: %d -x- %d", 
     2558              (pjsua_var.is_mswitch ? "Switch" : "Conf"), 
     2559              source, sink)); 
     2560    pj_log_push_indent(); 
     2561 
    24932562    status = pjmedia_conf_disconnect_port(pjsua_var.mconf, source, sink); 
    24942563    check_snd_dev_idle(); 
    24952564 
     2565    pj_log_pop_indent(); 
    24962566    return status; 
    24972567} 
     
    25592629    unsigned slot, file_id; 
    25602630    char path[PJ_MAXPATH]; 
    2561     pj_pool_t *pool; 
     2631    pj_pool_t *pool = NULL; 
    25622632    pjmedia_port *port; 
    2563     pj_status_t status; 
     2633    pj_status_t status = PJ_SUCCESS; 
    25642634 
    25652635    if (pjsua_var.player_cnt >= PJ_ARRAY_SIZE(pjsua_var.player)) 
    25662636        return PJ_ETOOMANY; 
     2637 
     2638    PJ_LOG(4,(THIS_FILE, "Creating file player: %.*s..", 
     2639              (int)filename->slen, filename->ptr)); 
     2640    pj_log_push_indent(); 
    25672641 
    25682642    PJSUA_LOCK(); 
     
    25752649    if (file_id == PJ_ARRAY_SIZE(pjsua_var.player)) { 
    25762650        /* This is unexpected */ 
    2577         PJSUA_UNLOCK(); 
    25782651        pj_assert(0); 
    2579         return PJ_EBUG; 
     2652        status = PJ_EBUG; 
     2653        goto on_error; 
    25802654    } 
    25812655 
     
    25852659    pool = pjsua_pool_create(get_basename(path, filename->slen), 1000, 1000); 
    25862660    if (!pool) { 
    2587         PJSUA_UNLOCK(); 
    2588         return PJ_ENOMEM; 
     2661        status = PJ_ENOMEM; 
     2662        goto on_error; 
    25892663    } 
    25902664 
     
    25962670                                    options, 0, &port); 
    25972671    if (status != PJ_SUCCESS) { 
    2598         PJSUA_UNLOCK(); 
    25992672        pjsua_perror(THIS_FILE, "Unable to open file for playback", status); 
    2600         pj_pool_release(pool); 
    2601         return status; 
     2673        goto on_error; 
    26022674    } 
    26032675 
     
    26062678    if (status != PJ_SUCCESS) { 
    26072679        pjmedia_port_destroy(port); 
    2608         PJSUA_UNLOCK(); 
    26092680        pjsua_perror(THIS_FILE, "Unable to add file to conference bridge",  
    26102681                     status); 
    2611         pj_pool_release(pool); 
    2612         return status; 
     2682        goto on_error; 
    26132683    } 
    26142684 
     
    26232693 
    26242694    PJSUA_UNLOCK(); 
     2695 
     2696    PJ_LOG(4,(THIS_FILE, "Player created, id=%d, slot=%d", file_id, slot)); 
     2697 
     2698    pj_log_pop_indent(); 
    26252699    return PJ_SUCCESS; 
     2700 
     2701on_error: 
     2702    PJSUA_UNLOCK(); 
     2703    if (pool) pj_pool_release(pool); 
     2704    pj_log_pop_indent(); 
     2705    return status; 
    26262706} 
    26272707 
     
    26382718{ 
    26392719    unsigned slot, file_id, ptime; 
    2640     pj_pool_t *pool; 
     2720    pj_pool_t *pool = NULL; 
    26412721    pjmedia_port *port; 
    2642     pj_status_t status; 
     2722    pj_status_t status = PJ_SUCCESS; 
    26432723 
    26442724    if (pjsua_var.player_cnt >= PJ_ARRAY_SIZE(pjsua_var.player)) 
    26452725        return PJ_ETOOMANY; 
     2726 
     2727    PJ_LOG(4,(THIS_FILE, "Creating playlist with %d file(s)..", file_count)); 
     2728    pj_log_push_indent(); 
    26462729 
    26472730    PJSUA_LOCK(); 
     
    26542737    if (file_id == PJ_ARRAY_SIZE(pjsua_var.player)) { 
    26552738        /* This is unexpected */ 
    2656         PJSUA_UNLOCK(); 
    26572739        pj_assert(0); 
    2658         return PJ_EBUG; 
     2740        status = PJ_EBUG; 
     2741        goto on_error; 
    26592742    } 
    26602743 
     
    26652748    pool = pjsua_pool_create("playlist", 1000, 1000); 
    26662749    if (!pool) { 
    2667         PJSUA_UNLOCK(); 
    2668         return PJ_ENOMEM; 
     2750        status = PJ_ENOMEM; 
     2751        goto on_error; 
    26692752    } 
    26702753 
     
    26732756                                         ptime, options, 0, &port); 
    26742757    if (status != PJ_SUCCESS) { 
    2675         PJSUA_UNLOCK(); 
    26762758        pjsua_perror(THIS_FILE, "Unable to create playlist", status); 
    2677         pj_pool_release(pool); 
    2678         return status; 
     2759        goto on_error; 
    26792760    } 
    26802761 
     
    26832764    if (status != PJ_SUCCESS) { 
    26842765        pjmedia_port_destroy(port); 
    2685         PJSUA_UNLOCK(); 
    26862766        pjsua_perror(THIS_FILE, "Unable to add port", status); 
    2687         pj_pool_release(pool); 
    2688         return status; 
     2767        goto on_error; 
    26892768    } 
    26902769 
     
    26992778 
    27002779    PJSUA_UNLOCK(); 
     2780 
     2781    PJ_LOG(4,(THIS_FILE, "Playlist created, id=%d, slot=%d", file_id, slot)); 
     2782 
     2783    pj_log_pop_indent(); 
     2784 
    27012785    return PJ_SUCCESS; 
    27022786 
     2787on_error: 
     2788    PJSUA_UNLOCK(); 
     2789    if (pool) pj_pool_release(pool); 
     2790    pj_log_pop_indent(); 
     2791 
     2792    return status; 
    27032793} 
    27042794 
     
    27522842    PJ_ASSERT_RETURN(id>=0&&id<(int)PJ_ARRAY_SIZE(pjsua_var.player), PJ_EINVAL); 
    27532843    PJ_ASSERT_RETURN(pjsua_var.player[id].port != NULL, PJ_EINVAL); 
     2844 
     2845    PJ_LOG(4,(THIS_FILE, "Destroying player %d..", id)); 
     2846    pj_log_push_indent(); 
    27542847 
    27552848    PJSUA_LOCK(); 
     
    27662859 
    27672860    PJSUA_UNLOCK(); 
     2861    pj_log_pop_indent(); 
    27682862 
    27692863    return PJ_SUCCESS; 
     
    27962890    pj_str_t ext; 
    27972891    int file_format; 
    2798     pj_pool_t *pool; 
     2892    pj_pool_t *pool = NULL; 
    27992893    pjmedia_port *port; 
    2800     pj_status_t status; 
     2894    pj_status_t status = PJ_SUCCESS; 
    28012895 
    28022896    /* Filename must present */ 
     
    28092903    PJ_ASSERT_RETURN(enc_type == 0, PJ_EINVAL); 
    28102904 
    2811     if (pjsua_var.rec_cnt >= PJ_ARRAY_SIZE(pjsua_var.recorder)) 
     2905    PJ_LOG(4,(THIS_FILE, "Creating recorder %.*s..", 
     2906              (int)filename->slen, filename->ptr)); 
     2907    pj_log_push_indent(); 
     2908 
     2909    if (pjsua_var.rec_cnt >= PJ_ARRAY_SIZE(pjsua_var.recorder)) { 
     2910        pj_log_pop_indent(); 
    28122911        return PJ_ETOOMANY; 
     2912    } 
    28132913 
    28142914    /* Determine the file format */ 
     
    28242924                             "determine file format for %.*s", 
    28252925                             (int)filename->slen, filename->ptr)); 
     2926        pj_log_pop_indent(); 
    28262927        return PJ_ENOTSUP; 
    28272928    } 
     
    28362937    if (file_id == PJ_ARRAY_SIZE(pjsua_var.recorder)) { 
    28372938        /* This is unexpected */ 
    2838         PJSUA_UNLOCK(); 
    28392939        pj_assert(0); 
    2840         return PJ_EBUG; 
     2940        status = PJ_EBUG; 
     2941        goto on_return; 
    28412942    } 
    28422943 
     
    28462947    pool = pjsua_pool_create(get_basename(path, filename->slen), 1000, 1000); 
    28472948    if (!pool) { 
    2848         PJSUA_UNLOCK(); 
    2849         return PJ_ENOMEM; 
     2949        status = PJ_ENOMEM; 
     2950        goto on_return; 
    28502951    } 
    28512952 
     
    28642965 
    28652966    if (status != PJ_SUCCESS) { 
    2866         PJSUA_UNLOCK(); 
    28672967        pjsua_perror(THIS_FILE, "Unable to open file for recording", status); 
    2868         pj_pool_release(pool); 
    2869         return status; 
     2968        goto on_return; 
    28702969    } 
    28712970 
     
    28742973    if (status != PJ_SUCCESS) { 
    28752974        pjmedia_port_destroy(port); 
    2876         PJSUA_UNLOCK(); 
    2877         pj_pool_release(pool); 
    2878         return status; 
     2975        goto on_return; 
    28792976    } 
    28802977 
     
    28882985 
    28892986    PJSUA_UNLOCK(); 
     2987 
     2988    PJ_LOG(4,(THIS_FILE, "Recorder created, id=%d, slot=%d", file_id, slot)); 
     2989 
     2990    pj_log_pop_indent(); 
    28902991    return PJ_SUCCESS; 
     2992 
     2993on_return: 
     2994    PJSUA_UNLOCK(); 
     2995    if (pool) pj_pool_release(pool); 
     2996    pj_log_pop_indent(); 
     2997    return status; 
    28912998} 
    28922999 
     
    29273034                     PJ_EINVAL); 
    29283035    PJ_ASSERT_RETURN(pjsua_var.recorder[id].port != NULL, PJ_EINVAL); 
     3036 
     3037    PJ_LOG(4,(THIS_FILE, "Destroying recorder %d..", id)); 
     3038    pj_log_push_indent(); 
    29293039 
    29303040    PJSUA_LOCK(); 
     
    29413051 
    29423052    PJSUA_UNLOCK(); 
     3053    pj_log_pop_indent(); 
    29433054 
    29443055    return PJ_SUCCESS; 
     
    31483259              param->base.samples_per_frame / param->base.channel_count * 
    31493260              1000 / param->base.clock_rate)); 
     3261    pj_log_push_indent(); 
    31503262 
    31513263    status = pjmedia_snd_port_create2( pjsua_var.snd_pool,  
    31523264                                       param, &pjsua_var.snd_port); 
    31533265    if (status != PJ_SUCCESS) 
    3154         return status; 
     3266        goto on_error; 
    31553267 
    31563268    /* Get the port0 of the conference bridge. */ 
     
    31893301                       errmsg)); 
    31903302            close_snd_dev(); 
    3191             return status; 
     3303            goto on_error; 
    31923304        }  
    31933305             
     
    32183330        pjmedia_snd_port_destroy(pjsua_var.snd_port);     
    32193331        pjsua_var.snd_port = NULL;        
    3220         return status;    
     3332        goto on_error; 
    32213333    } 
    32223334 
     
    32563368        /* Any error is not major, let it through */ 
    32573369        status = PJ_SUCCESS; 
    3258     }; 
     3370    } 
    32593371 
    32603372    /* If this is the first time the audio device is open, retrieve some 
     
    32673379    } 
    32683380 
     3381    pj_log_pop_indent(); 
    32693382    return PJ_SUCCESS; 
     3383 
     3384on_error: 
     3385    pj_log_pop_indent(); 
     3386    return status; 
    32703387} 
    32713388 
     
    32743391static void close_snd_dev(void) 
    32753392{ 
     3393    pj_log_push_indent(); 
     3394 
    32763395    /* Notify app */ 
    32773396    if (pjsua_var.snd_is_on && pjsua_var.ua_cfg.cb.on_snd_dev_operation) { 
     
    33133432    pjsua_var.snd_pool = NULL; 
    33143433    pjsua_var.snd_is_on = PJ_FALSE; 
     3434 
     3435    pj_log_pop_indent(); 
    33153436} 
    33163437 
     
    33283449    pj_status_t status = -1; 
    33293450 
     3451    PJ_LOG(4,(THIS_FILE, "Set sound device: capture=%d, playback=%d", 
     3452              capture_dev, playback_dev)); 
     3453    pj_log_push_indent(); 
     3454 
    33303455    /* Null-sound */ 
    33313456    if (capture_dev==NULL_SND_DEV_ID && playback_dev==NULL_SND_DEV_ID) { 
    3332         return pjsua_set_null_snd_dev(); 
     3457        status = pjsua_set_null_snd_dev(); 
     3458        pj_log_pop_indent(); 
     3459        return status; 
    33333460    } 
    33343461 
     
    33613488                                  samples_per_frame, 16); 
    33623489        if (status != PJ_SUCCESS) 
    3363             return status; 
     3490            goto on_error; 
    33643491 
    33653492        /* Open! */ 
     
    33723499    if (status != PJ_SUCCESS) { 
    33733500        pjsua_perror(THIS_FILE, "Unable to open sound device", status); 
    3374         return status; 
     3501        goto on_error; 
    33753502    } 
    33763503 
     
    33783505    pjsua_var.snd_is_on = PJ_TRUE; 
    33793506 
     3507    pj_log_pop_indent(); 
    33803508    return PJ_SUCCESS; 
     3509 
     3510on_error: 
     3511    pj_log_pop_indent(); 
     3512    return status; 
    33813513} 
    33823514 
     
    34083540    pjmedia_port *conf_port; 
    34093541    pj_status_t status; 
     3542 
     3543    PJ_LOG(4,(THIS_FILE, "Setting null sound device..")); 
     3544    pj_log_push_indent(); 
     3545 
    34103546 
    34113547    /* Close existing sound device */ 
     
    34353571        pjsua_perror(THIS_FILE, "Unable to create null sound device", 
    34363572                     status); 
     3573        pj_log_pop_indent(); 
    34373574        return status; 
    34383575    } 
     
    34483585    pjsua_var.snd_is_on = PJ_TRUE; 
    34493586 
     3587    pj_log_pop_indent(); 
    34503588    return PJ_SUCCESS; 
    34513589} 
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_pres.c

    r3553 r3753  
    390390                     PJ_ETOOMANY); 
    391391 
     392    PJ_LOG(4,(THIS_FILE, "Adding buddy: %.*s", 
     393              (int)cfg->uri.slen, cfg->uri.ptr)); 
     394    pj_log_push_indent(); 
     395 
    392396    PJSUA_LOCK(); 
    393397 
     
    403407        /* This shouldn't happen */ 
    404408        pj_assert(!"index < PJ_ARRAY_SIZE(pjsua_var.buddy)"); 
     409        pj_log_pop_indent(); 
    405410        return PJ_ETOOMANY; 
    406411    } 
     
    432437        buddy->pool = NULL; 
    433438        PJSUA_UNLOCK(); 
     439        pj_log_pop_indent(); 
    434440        return PJSIP_EINVALIDURI; 
    435441    } 
     
    440446        buddy->pool = NULL; 
    441447        PJSUA_UNLOCK(); 
     448        pj_log_pop_indent(); 
    442449        return PJSIP_EINVALIDSCHEME; 
    443450    } 
     
    470477    PJSUA_UNLOCK(); 
    471478 
     479    PJ_LOG(4,(THIS_FILE, "Buddy %d added.", index)); 
     480 
    472481    pjsua_buddy_subscribe_pres(index, cfg->subscribe); 
    473482 
     483    pj_log_pop_indent(); 
    474484    return PJ_SUCCESS; 
    475485} 
     
    495505    if (status != PJ_SUCCESS) 
    496506        return status; 
     507 
     508    PJ_LOG(4,(THIS_FILE, "Buddy %d: deleting..", buddy_id)); 
     509    pj_log_push_indent(); 
    497510 
    498511    /* Unsubscribe presence */ 
     
    519532 
    520533    unlock_buddy(&lck); 
     534    pj_log_pop_indent(); 
    521535    return PJ_SUCCESS; 
    522536} 
     
    538552        return status; 
    539553 
     554    PJ_LOG(4,(THIS_FILE, "Buddy %d: unsubscribing presence..", buddy_id)); 
     555    pj_log_push_indent(); 
     556 
    540557    lck.buddy->monitor = subscribe; 
    541558 
     
    543560 
    544561    unlock_buddy(&lck); 
     562    pj_log_pop_indent(); 
    545563    return PJ_SUCCESS; 
    546564} 
     
    560578    if (status != PJ_SUCCESS) 
    561579        return status; 
     580 
     581    PJ_LOG(4,(THIS_FILE, "Buddy %d: updating presence..", buddy_id)); 
     582    pj_log_push_indent(); 
    562583 
    563584    /* Is this an unsubscribe request? */ 
     
    565586        unsubscribe_buddy_presence(buddy_id); 
    566587        unlock_buddy(&lck); 
     588        pj_log_pop_indent(); 
    567589        return PJ_SUCCESS; 
    568590    } 
     
    571593    if (lck.buddy->sub) { 
    572594        unlock_buddy(&lck); 
     595        pj_log_pop_indent(); 
    573596        return PJ_SUCCESS; 
    574597    } 
     
    578601 
    579602    unlock_buddy(&lck); 
    580  
     603    pj_log_pop_indent(); 
    581604    return PJ_SUCCESS; 
    582605} 
     
    746769        PJ_LOG(4,(THIS_FILE, "Server subscription to %s is %s", 
    747770                  uapres->remote, pjsip_evsub_get_state_name(sub))); 
     771        pj_log_push_indent(); 
    748772 
    749773        state = pjsip_evsub_get_state(sub); 
     
    762786            pj_list_erase(uapres); 
    763787        } 
     788        pj_log_pop_indent(); 
    764789    } 
    765790 
     
    807832    PJ_LOG(4,(THIS_FILE, "Creating server subscription, using account %d", 
    808833              acc_id)); 
     834    pj_log_push_indent(); 
    809835     
    810836    /* Create suitable Contact header */ 
     
    820846            pjsip_endpt_respond_stateless(pjsua_var.endpt, rdata, 400, NULL, 
    821847                                          NULL, NULL); 
     848            pj_log_pop_indent(); 
    822849            return PJ_TRUE; 
    823850        } 
     
    834861        pjsip_endpt_respond_stateless(pjsua_var.endpt, rdata, 400, NULL, 
    835862                                      NULL, NULL); 
     863        pj_log_pop_indent(); 
    836864        return PJ_TRUE; 
    837865    } 
     
    865893 
    866894        PJSUA_UNLOCK(); 
     895        pj_log_pop_indent(); 
    867896        return PJ_TRUE; 
    868897    } 
     
    935964            pjsip_pres_terminate(sub, PJ_FALSE); 
    936965            PJSUA_UNLOCK(); 
     966            pj_log_pop_indent(); 
    937967            return PJ_FALSE; 
    938968        } 
     
    953983        pjsip_pres_terminate(sub, PJ_FALSE); 
    954984        PJSUA_UNLOCK(); 
     985        pj_log_pop_indent(); 
    955986        return PJ_TRUE; 
    956987    } 
     
    964995        pjsip_pres_terminate(sub, PJ_FALSE); 
    965996        PJSUA_UNLOCK(); 
     997        pj_log_pop_indent(); 
    966998        return PJ_FALSE; 
    967999    } 
     
    9761008 
    9771009    PJSUA_UNLOCK(); 
    978  
     1010    pj_log_pop_indent(); 
    9791011    return PJ_TRUE; 
    9801012} 
     
    10071039    PJ_ASSERT_RETURN(pjsua_var.acc[acc_id].valid, PJ_EINVALIDOP); 
    10081040 
     1041    PJ_LOG(4,(THIS_FILE, "Acc %d: sending NOTIFY for srv_pres=0x%p..", 
     1042              acc_id, (int)(long)srv_pres)); 
     1043    pj_log_push_indent(); 
     1044 
    10091045    PJSUA_LOCK(); 
    10101046 
     
    10151051        /* Subscription has been terminated */ 
    10161052        PJSUA_UNLOCK(); 
     1053        pj_log_pop_indent(); 
    10171054        return PJ_EINVALIDOP; 
    10181055    } 
     
    10561093        pjsip_pres_terminate(srv_pres->sub, PJ_FALSE); 
    10571094        PJSUA_UNLOCK(); 
     1095        pj_log_pop_indent(); 
    10581096        return status; 
    10591097    } 
     
    10721110 
    10731111    PJSUA_UNLOCK(); 
    1074  
     1112    pj_log_pop_indent(); 
    10751113    return PJ_SUCCESS; 
    10761114} 
     
    11321170    pj_status_t status; 
    11331171 
     1172    PJ_LOG(5,(THIS_FILE, "Acc %d: sending %sPUBLISH..", 
     1173              acc_id, (active ? "" : "un-"))); 
     1174    pj_log_push_indent(); 
    11341175 
    11351176    /* Create PUBLISH request */ 
     
    12001241 
    12011242    acc->publish_state = acc->online_status; 
     1243    pj_log_pop_indent(); 
    12021244    return PJ_SUCCESS; 
    12031245 
     
    12071249        acc->publish_sess = NULL; 
    12081250    } 
     1251    pj_log_pop_indent(); 
    12091252    return status; 
    12101253} 
     
    14551498                  pjsua_var.buddy[buddy->index].uri.ptr,  
    14561499                  pjsip_evsub_get_state_name(sub))); 
     1500        pj_log_push_indent(); 
    14571501 
    14581502        if (pjsip_evsub_get_state(sub) == PJSIP_EVSUB_STATE_TERMINATED) { 
     
    15741618            pjsip_evsub_set_mod_data(sub, pjsua_var.mod.id, NULL); 
    15751619        } 
     1620 
     1621        pj_log_pop_indent(); 
    15761622    } 
    15771623} 
     
    16851731    acc = &pjsua_var.acc[acc_id]; 
    16861732 
    1687     PJ_LOG(4,(THIS_FILE, "Using account %d for buddy %d subscription", 
    1688                          acc_id, buddy_id)); 
     1733    PJ_LOG(4,(THIS_FILE, "Buddy %d: subscribing presence,using account %d..", 
     1734              buddy_id, acc_id)); 
     1735    pj_log_push_indent(); 
    16891736 
    16901737    /* Generate suitable Contact header unless one is already set in 
     
    17021749                         status); 
    17031750            pj_pool_release(tmp_pool); 
     1751            pj_log_pop_indent(); 
    17041752            return; 
    17051753        } 
     
    17161764                     status); 
    17171765        if (tmp_pool) pj_pool_release(tmp_pool); 
     1766        pj_log_pop_indent(); 
    17181767        return; 
    17191768    } 
     
    17351784        if (buddy->dlg) pjsip_dlg_dec_lock(buddy->dlg); 
    17361785        if (tmp_pool) pj_pool_release(tmp_pool); 
     1786        pj_log_pop_indent(); 
    17371787        return; 
    17381788    } 
     
    17741824                     status); 
    17751825        if (tmp_pool) pj_pool_release(tmp_pool); 
     1826        pj_log_pop_indent(); 
    17761827        return; 
    17771828    } 
     
    17891840                     status); 
    17901841        if (tmp_pool) pj_pool_release(tmp_pool); 
     1842        pj_log_pop_indent(); 
    17911843        return; 
    17921844    } 
     
    17941846    pjsip_dlg_dec_lock(buddy->dlg); 
    17951847    if (tmp_pool) pj_pool_release(tmp_pool); 
     1848    pj_log_pop_indent(); 
    17961849} 
    17971850 
     
    18131866        return; 
    18141867    } 
     1868 
     1869    PJ_LOG(5,(THIS_FILE, "Buddy %d: unsubscribing..", buddy_id)); 
     1870    pj_log_push_indent(); 
    18151871 
    18161872    status = pjsip_pres_initiate( buddy->sub, 0, &tdata); 
     
    18261882                     status); 
    18271883    } 
     1884 
     1885    pj_log_pop_indent(); 
    18281886} 
    18291887 
     
    19151973    mwi_info.rdata = rdata; 
    19161974 
     1975    PJ_LOG(4,(THIS_FILE, "MWI got NOTIFY..")); 
     1976    pj_log_push_indent(); 
     1977 
    19171978    /* Call callback */ 
    19181979    if (pjsua_var.ua_cfg.cb.on_mwi_info) { 
    19191980        (*pjsua_var.ua_cfg.cb.on_mwi_info)(acc->index, &mwi_info); 
    19201981    } 
     1982 
     1983    pj_log_pop_indent(); 
    19211984} 
    19221985 
     
    19732036 
    19742037    } 
     2038 
     2039    PJ_LOG(4,(THIS_FILE, "Starting MWI subscription..")); 
     2040    pj_log_push_indent(); 
    19752041 
    19762042    /* Generate suitable Contact header unless one is already set in  
     
    19872053                         status); 
    19882054            pj_pool_release(tmp_pool); 
     2055            pj_log_pop_indent(); 
    19892056            return; 
    19902057        } 
     
    20002067        pjsua_perror(THIS_FILE, "Unable to create dialog", status); 
    20012068        if (tmp_pool) pj_pool_release(tmp_pool); 
     2069        pj_log_pop_indent(); 
    20022070        return; 
    20032071    } 
     
    20152083        if (tmp_pool) pj_pool_release(tmp_pool); 
    20162084        if (acc->mwi_dlg) pjsip_dlg_dec_lock(acc->mwi_dlg); 
     2085        pj_log_pop_indent(); 
    20172086        return; 
    20182087    } 
     
    20552124                     status); 
    20562125        if (tmp_pool) pj_pool_release(tmp_pool); 
     2126        pj_log_pop_indent(); 
    20572127        return; 
    20582128    } 
     
    20712141                     status); 
    20722142        if (tmp_pool) pj_pool_release(tmp_pool); 
     2143        pj_log_pop_indent(); 
    20732144        return; 
    20742145    } 
     
    20772148    if (tmp_pool) pj_pool_release(tmp_pool); 
    20782149 
     2150    pj_log_pop_indent(); 
    20792151} 
    20802152 
     
    21062178    } 
    21072179 
     2180    PJ_LOG(4,(THIS_FILE, "Got unsolicited NOTIFY from %s:%d..", 
     2181              rdata->pkt_info.src_name, rdata->pkt_info.src_port)); 
     2182    pj_log_push_indent(); 
     2183 
    21082184    /* Got unsolicited MWI request, respond with 200/OK first */ 
    21092185    pjsip_endpt_respond(pjsua_get_pjsip_endpt(), NULL, rdata, 200, NULL, 
     
    21242200    } 
    21252201 
    2126      
     2202    pj_log_pop_indent(); 
    21272203    return PJ_TRUE; 
    21282204} 
     
    22542330 
    22552331    PJ_LOG(4,(THIS_FILE, "Shutting down presence..")); 
     2332    pj_log_push_indent(); 
    22562333 
    22572334    if (pjsua_var.pres_timer.id != 0) { 
     
    22762353            pjsua_pres_update_acc(i, PJ_FALSE); 
    22772354    } 
    2278 } 
     2355 
     2356    pj_log_pop_indent(); 
     2357} 
  • pjproject/trunk/pjsip/src/pjsua-lib/pjsua_vid.c

    r3737 r3753  
    3737    pj_status_t status; 
    3838 
     39    PJ_LOG(4,(THIS_FILE, "Initializing video subsystem..")); 
     40    pj_log_push_indent(); 
     41 
    3942    status = pjmedia_video_format_mgr_create(pjsua_var.pool, 64, 0, NULL); 
    4043    if (status != PJ_SUCCESS) { 
    4144        PJ_PERROR(1,(THIS_FILE, status, 
    4245                     "Error creating PJMEDIA video format manager")); 
    43         return status; 
     46        goto on_error; 
    4447    } 
    4548 
     
    4851        PJ_PERROR(1,(THIS_FILE, status, 
    4952                     "Error creating PJMEDIA converter manager")); 
    50         return status; 
     53        goto on_error; 
    5154    } 
    5255 
     
    5558        PJ_PERROR(1,(THIS_FILE, status, 
    5659                     "Error creating PJMEDIA video codec manager")); 
    57         return status; 
     60        goto on_error; 
    5861    } 
    5962 
     
    6265        PJ_PERROR(1,(THIS_FILE, status, 
    6366                     "Error creating PJMEDIA video subsystem")); 
    64         return status; 
     67        goto on_error; 
    6568    } 
    6669 
     
    7073        PJ_PERROR(1,(THIS_FILE, status, 
    7174                     "Error initializing ffmpeg library")); 
    72         return status; 
     75        goto on_error; 
    7376    } 
    7477#endif 
     
    7780        if (pjsua_var.win[i].pool == NULL) { 
    7881            pjsua_var.win[i].pool = pjsua_pool_create("win%p", 512, 512); 
    79             if (pjsua_var.win[i].pool == NULL) 
    80                 return PJ_ENOMEM; 
     82            if (pjsua_var.win[i].pool == NULL) { 
     83                status = PJ_ENOMEM; 
     84                goto on_error; 
     85            } 
    8186        } 
    8287    } 
    8388 
     89    pj_log_pop_indent(); 
    8490    return PJ_SUCCESS; 
     91 
     92on_error: 
     93    pj_log_pop_indent(); 
     94    return status; 
    8595} 
    8696 
     
    93103{ 
    94104    unsigned i; 
     105 
     106    PJ_LOG(4,(THIS_FILE, "Destroying video subsystem..")); 
     107    pj_log_push_indent(); 
    95108 
    96109    for (i=0; i<PJSUA_MAX_VID_WINS; ++i) { 
     
    108121#endif 
    109122 
     123    pj_log_pop_indent(); 
    110124    return PJ_SUCCESS; 
    111125} 
     
    343357    pj_status_t status; 
    344358    unsigned i; 
     359 
     360    PJ_LOG(4,(THIS_FILE, "Creating window, type=%d, cap_dev=%d, rend_dev=%d", 
     361              type, cap_id, rend_id)); 
     362    pj_log_push_indent(); 
    345363 
    346364    /* If type is preview, check if it exists already */ 
     
    361379            /* Done */ 
    362380            *id = wid; 
     381            PJ_LOG(4,(THIS_FILE, "Window already exist: %d", wid)); 
     382            pj_log_pop_indent(); 
    363383            return PJ_SUCCESS; 
    364384        } 
     
    374394        } 
    375395    } 
    376     if (i == PJSUA_MAX_VID_WINS) 
     396    if (i == PJSUA_MAX_VID_WINS) { 
     397        pj_log_pop_indent(); 
    377398        return PJ_ETOOMANY; 
     399    } 
    378400 
    379401    /* Initialize window */ 
     
    449471    *id = wid; 
    450472 
     473    PJ_LOG(4,(THIS_FILE, "Window %d created", wid)); 
     474    pj_log_pop_indent(); 
    451475    return PJ_SUCCESS; 
    452476 
    453477on_error: 
    454478    free_vid_win(wid); 
     479    pj_log_pop_indent(); 
    455480    return status; 
    456481} 
     
    461486    pjsua_vid_win *w = &pjsua_var.win[wid]; 
    462487     
     488    PJ_LOG(4,(THIS_FILE, "Window %d: destroying..", wid)); 
     489    pj_log_push_indent(); 
     490 
    463491    if (w->vp_cap) { 
    464492        pjmedia_vid_port_stop(w->vp_cap); 
     
    474502    } 
    475503    pjsua_vid_win_reset(wid); 
     504 
     505    pj_log_pop_indent(); 
    476506} 
    477507 
     
    514544    pj_status_t status; 
    515545     
     546    PJ_LOG(4,(THIS_FILE, "Video channel update..")); 
     547    pj_log_push_indent(); 
     548 
    516549    status = pjmedia_vid_stream_info_from_sdp(si, tmp_pool, pjsua_var.med_endpt, 
    517550                                              local_sdp, remote_sdp, strm_idx); 
    518551    if (status != PJ_SUCCESS) 
    519         return status; 
     552        goto on_error; 
    520553 
    521554    /* Check if no media is active */ 
     
    535568                                               remote_sdp, strm_idx); 
    536569        if (status != PJ_SUCCESS) 
    537             return status; 
     570            goto on_error; 
    538571 
    539572        call_med->tp_st = PJSUA_MED_TP_RUNNING; 
     
    592625                                              &dev_info); 
    593626            if (status != PJ_SUCCESS) 
    594                 return status; 
     627                goto on_error; 
    595628 
    596629            /* Find matched format ID */ 
     
    617650                                           &call_med->strm.v.stream); 
    618651        if (status != PJ_SUCCESS) 
    619             return status; 
     652            goto on_error; 
    620653 
    621654        /* Start stream */ 
    622655        status = pjmedia_vid_stream_start(call_med->strm.v.stream); 
    623656        if (status != PJ_SUCCESS) 
    624             return status; 
     657            goto on_error; 
    625658 
    626659        /* Setup decoding direction */ 
     
    630663            pjsua_vid_win *w; 
    631664 
     665            PJ_LOG(4,(THIS_FILE, "Setting up RX..")); 
     666            pj_log_push_indent(); 
     667 
    632668            status = pjmedia_vid_stream_get_port(call_med->strm.v.stream, 
    633669                                                 PJMEDIA_DIR_DECODING, 
    634670                                                 &media_port); 
    635             if (status != PJ_SUCCESS) 
    636                 return status; 
     671            if (status != PJ_SUCCESS) { 
     672                pj_log_pop_indent(); 
     673                goto on_error; 
     674            } 
    637675 
    638676            /* Create stream video window */ 
     
    644682                                    acc->cfg.vid_in_auto_show, 
    645683                                    &wid); 
    646             if (status != PJ_SUCCESS) 
    647                 return status; 
     684            if (status != PJ_SUCCESS) { 
     685                pj_log_pop_indent(); 
     686                goto on_error; 
     687            } 
    648688 
    649689            w = &pjsua_var.win[wid]; 
     
    659699            status = pjmedia_vid_port_connect(w->vp_rend, media_port, 
    660700                                              PJ_FALSE); 
    661             if (status != PJ_SUCCESS) 
    662                 return status; 
     701            if (status != PJ_SUCCESS) { 
     702                pj_log_pop_indent(); 
     703                goto on_error; 
     704            } 
    663705 
    664706            /* Start renderer */ 
    665707            status = pjmedia_vid_port_start(w->vp_rend); 
    666             if (status != PJ_SUCCESS) 
    667                 return status; 
     708            if (status != PJ_SUCCESS) { 
     709                pj_log_pop_indent(); 
     710                goto on_error; 
     711            } 
    668712 
    669713            /* Done */ 
    670714            inc_vid_win(wid); 
    671715            call_med->strm.v.rdr_win_id = wid; 
     716            pj_log_pop_indent(); 
    672717        } 
    673718 
     
    678723            pjsua_vid_win_id wid; 
    679724 
     725            PJ_LOG(4,(THIS_FILE, "Setting up TX..")); 
     726            pj_log_push_indent(); 
     727 
    680728            status = pjmedia_vid_stream_get_port(call_med->strm.v.stream, 
    681729                                                 PJMEDIA_DIR_ENCODING, 
    682730                                                 &media_port); 
    683             if (status != PJ_SUCCESS) 
    684                 return status; 
     731            if (status != PJ_SUCCESS) { 
     732                pj_log_pop_indent(); 
     733                goto on_error; 
     734            } 
    685735 
    686736            /* Create preview video window */ 
     
    693743                                    PJ_FALSE, 
    694744                                    &wid); 
    695             if (status != PJ_SUCCESS) 
    696                 return status; 
     745            if (status != PJ_SUCCESS) { 
     746                pj_log_pop_indent(); 
     747                goto on_error; 
     748            } 
    697749 
    698750            w = &pjsua_var.win[wid]; 
     
    705757            /* Connect stream to capturer (via video window tee) */ 
    706758            status = pjmedia_vid_tee_add_dst_port2(w->tee, 0, media_port); 
    707             if (status != PJ_SUCCESS) 
    708                 return status; 
     759            if (status != PJ_SUCCESS) { 
     760                pj_log_pop_indent(); 
     761                goto on_error; 
     762            } 
    709763 
    710764            /* Start renderer */ 
    711765            status = pjmedia_vid_port_start(w->vp_rend); 
    712             if (status != PJ_SUCCESS) 
    713                 return status; 
     766            if (status != PJ_SUCCESS) { 
     767                pj_log_pop_indent(); 
     768                goto on_error; 
     769            } 
    714770 
    715771            /* Start capturer */ 
    716772            status = pjmedia_vid_port_start(w->vp_cap); 
    717             if (status != PJ_SUCCESS) 
    718                 return status; 
     773            if (status != PJ_SUCCESS) { 
     774                pj_log_pop_indent(); 
     775                goto on_error; 
     776            } 
    719777 
    720778            /* Done */ 
    721779            inc_vid_win(wid); 
    722780            call_med->strm.v.cap_win_id = wid; 
     781            pj_log_pop_indent(); 
    723782        } 
    724783 
     
    766825        if (len > 0) 
    767826            info_len += len; 
    768         PJ_LOG(4,(THIS_FILE,"Media updates%s", info)); 
     827        PJ_LOG(4,(THIS_FILE,"Video updated%s", info)); 
    769828    } 
    770829 
     
    773832                                          PJMEDIA_DIR_ENCODING); 
    774833        if (status != PJ_SUCCESS) 
    775             return status; 
    776     } 
    777  
     834            goto on_error; 
     835    } 
     836 
     837    pj_log_pop_indent(); 
    778838    return PJ_SUCCESS; 
     839 
     840on_error: 
     841    pj_log_pop_indent(); 
     842    return status; 
    779843} 
    780844 
     
    790854    if (!strm) 
    791855        return; 
     856 
     857    PJ_LOG(4,(THIS_FILE, "Stopping video stream..")); 
     858    pj_log_push_indent(); 
    792859 
    793860    /* Unsubscribe events */ 
     
    832899    pjmedia_vid_stream_destroy(strm); 
    833900    call_med->strm.v.stream = NULL; 
     901 
     902    pj_log_pop_indent(); 
    834903} 
    835904 
     
    847916    pj_status_t status; 
    848917 
    849     PJSUA_LOCK(); 
    850  
    851918    if (!prm) { 
    852919        pjsua_vid_preview_param_default(&default_param); 
    853920        prm = &default_param; 
    854921    } 
     922 
     923    PJ_LOG(4,(THIS_FILE, "Starting preview for cap_dev=%d, show=%d", 
     924              id, prm->show)); 
     925    pj_log_push_indent(); 
     926 
     927    PJSUA_LOCK(); 
    855928 
    856929    rend_id = prm->rend_id; 
     
    860933    if (status != PJ_SUCCESS) { 
    861934        PJSUA_UNLOCK(); 
     935        pj_log_pop_indent(); 
    862936        return status; 
    863937    } 
     
    869943    if (status != PJ_SUCCESS) { 
    870944        PJSUA_UNLOCK(); 
     945        pj_log_pop_indent(); 
    871946        return status; 
    872947    } 
     
    876951    if (status != PJ_SUCCESS) { 
    877952        PJSUA_UNLOCK(); 
     953        pj_log_pop_indent(); 
    878954        return status; 
    879955    } 
     
    882958 
    883959    PJSUA_UNLOCK(); 
     960    pj_log_pop_indent(); 
    884961    return PJ_SUCCESS; 
    885962} 
     
    891968{ 
    892969    pjsua_vid_win_id wid = PJSUA_INVALID_ID; 
     970 
     971    PJ_LOG(4,(THIS_FILE, "Stopping preview for cap_dev=%d", id)); 
     972    pj_log_push_indent(); 
    893973 
    894974    PJSUA_LOCK(); 
     
    896976    if (wid == PJSUA_INVALID_ID) { 
    897977        PJSUA_UNLOCK(); 
     978        pj_log_pop_indent(); 
    898979        return PJ_ENOTFOUND; 
    899980    } 
     
    902983 
    903984    PJSUA_UNLOCK(); 
     985    pj_log_pop_indent(); 
    904986 
    905987    return PJ_SUCCESS; 
     
    15801662                     PJ_EINVAL); 
    15811663    PJ_ASSERT_RETURN(op != PJSUA_CALL_VID_STRM_NO_OP, PJ_EINVAL); 
     1664 
     1665    PJ_LOG(4,(THIS_FILE, "Call %d: set video stream, op=%d", 
     1666              call_id, op)); 
     1667    pj_log_push_indent(); 
    15821668 
    15831669    PJSUA_LOCK(); 
     
    16361722 
    16371723    PJSUA_UNLOCK(); 
     1724    pj_log_pop_indent(); 
    16381725 
    16391726    return status; 
Note: See TracChangeset for help on using the changeset viewer.