]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
can't win
authorAnthony Minessale <anthony.minessale@gmail.com>
Fri, 4 Dec 2009 20:54:15 +0000 (20:54 +0000)
committerAnthony Minessale <anthony.minessale@gmail.com>
Fri, 4 Dec 2009 20:54:15 +0000 (20:54 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@15794 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/mod/endpoints/mod_sofia/mod_sofia.c

index ae4bfe3e78f0e988b2f56d502d1ae9be6264fbbe..ca15700faf61b6f98bf769277526f86a7ccd9905 100644 (file)
@@ -886,10 +886,18 @@ static switch_status_t sofia_read_frame(switch_core_session_t *session, switch_f
                                                                        }
                                                                        
                                                                        
-                                                                       tech_pvt->check_frames = MAX_CODEC_CHECK_FRAMES;
+                                                                       tech_pvt->check_frames = 0;
                                                                        tech_pvt->last_ts = 0;
+
                                                                        /* inform them of the codec they are actually sending */
-                                                                       sofia_glue_do_invite(session);
+                                                                       if (++tech_pvt->codec_reinvites > 2) {
+                                                                               switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_WARNING, 
+                                                                                                                 "Ok, some devices *cough* X-lite *cough*\n"
+                                                                                                                 "seem to continue to lie over and over again so I guess we'll\n"
+                                                                                                                 "leave well-enough alone and let them lie\n");
+                                                                       } else {
+                                                                               sofia_glue_do_invite(session);
+                                                                       }
 
                                                                }