diff -r 4fef4ced1e97 -r 361d8577ebd1 jingle/action-handlers.c --- a/jingle/action-handlers.c Mon Aug 16 18:32:55 2010 +0200 +++ b/jingle/action-handlers.c Mon Aug 16 18:33:33 2010 +0200 @@ -105,6 +105,7 @@ sess = session_new_from_jinglenode(jn); for (child = jn->content; child; child = child->next) { + SessionContent *sc; cn = (JingleContent *)(child->data); xmlns = lm_message_node_get_attribute(cn->description, "xmlns"); @@ -115,15 +116,15 @@ transfuncs = jingle_get_transportfuncs(xmlns); if (transfuncs == NULL) continue; - description = appfuncs->check(cn, &err); - if (description == NULL || err != NULL) continue; - transport = transfuncs->check(cn, &err); - if (transport == NULL || err != NULL) continue; - - session_add_content_from_jinglecontent(sess, cn, - JINGLE_SESSION_STATE_PENDING); + sc = session_add_content_from_jinglecontent(sess, cn, + JINGLE_SESSION_STATE_PENDING, + &err); + if (err != NULL || sc == NULL) { + scr_LogPrint(LPRINT_LOGNORM, "Cannot add a content: %s", err->message); + g_error_free(err); + } } - + if(g_slist_length(sess->content) == 0) { jingle_send_session_terminate(sess, "unsupported-applications"); session_delete(sess);