- Timestamp:
- Jan 21, 2007 4:11:18 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjsip/src/pjsip-ua/sip_reg.c
r879 r891 574 574 regc->has_tsx = PJ_FALSE; 575 575 576 /* If registration data has been deleted by user then remove registration 577 * data from transaction's callback, and don't call callback. 578 */ 579 if (regc->_delete_flag) { 580 581 /* Nothing to do */ 582 ; 583 584 } else if (tsx->status_code == PJSIP_SC_PROXY_AUTHENTICATION_REQUIRED || 585 tsx->status_code == PJSIP_SC_UNAUTHORIZED) 576 /* Handle 401/407 challenge (even when _delete_flag is set) */ 577 if (tsx->status_code == PJSIP_SC_PROXY_AUTHENTICATION_REQUIRED || 578 tsx->status_code == PJSIP_SC_UNAUTHORIZED) 586 579 { 587 580 pjsip_rx_data *rdata = event->body.tsx_state.src.rdata; … … 598 591 599 592 if (status != PJ_SUCCESS) { 600 call_callback(regc, status, tsx->status_code, 601 &rdata->msg_info.msg->line.status.reason, 602 rdata, -1, 0, NULL); 593 594 /* Only call callback if application is still interested 595 * in it. 596 */ 597 if (regc->_delete_flag == 0) { 598 /* Increment busy flag temporarily to prevent regc from 599 * being destroyed. 600 */ 601 ++regc->busy; 602 603 call_callback(regc, status, tsx->status_code, 604 &rdata->msg_info.msg->line.status.reason, 605 rdata, -1, 0, NULL); 606 607 /* Decrement busy flag */ 608 --regc->busy; 609 } 603 610 } 604 611 605 return; 612 } else if (regc->_delete_flag) { 613 614 /* User has called pjsip_regc_destroy(), so don't call callback. 615 * This regc will be destroyed later in this function. 616 */ 617 618 /* Nothing to do */ 619 ; 606 620 607 621 } else {
Note: See TracChangeset
for help on using the changeset viewer.