[telepathy-gabble/master] Sanity-check Jingle actions in a few places.
Will Thompson
will.thompson at collabora.co.uk
Tue Jun 2 09:01:11 PDT 2009
---
src/jingle-content.c | 2 +-
src/jingle-session.c | 12 +++++++-----
2 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/src/jingle-content.c b/src/jingle-content.c
index 723d1a3..ef560f9 100644
--- a/src/jingle-content.c
+++ b/src/jingle-content.c
@@ -807,7 +807,7 @@ send_content_add_or_accept (GabbleJingleContent *self)
GabbleJingleContentPrivate *priv = self->priv;
LmMessage *msg;
LmMessageNode *sess_node;
- JingleAction action = JINGLE_ACTION_UNKNOWN;
+ JingleAction action;
JingleContentState new_state = JINGLE_CONTENT_STATE_EMPTY;
g_assert (gabble_jingle_content_is_ready (self));
diff --git a/src/jingle-session.c b/src/jingle-session.c
index 9189078..11daec4 100644
--- a/src/jingle-session.c
+++ b/src/jingle-session.c
@@ -464,6 +464,8 @@ produce_action (JingleAction action, JingleDialect dialect)
gboolean gmode = (dialect == JINGLE_DIALECT_GTALK3) ||
(dialect == JINGLE_DIALECT_GTALK4);
+ g_return_val_if_fail (action != JINGLE_ACTION_UNKNOWN, NULL);
+
switch (action) {
case JINGLE_ACTION_SESSION_INITIATE:
return (gmode) ? "initiate" : "session-initiate";
@@ -493,12 +495,10 @@ produce_action (JingleAction action, JingleDialect dialect)
case JINGLE_ACTION_DESCRIPTION_INFO:
return "description-info";
default:
+ /* only reached if g_return_val_if_fail is disabled */
DEBUG ("unknown action %u", action);
- g_assert_not_reached ();
- }
-
- /* to make gcc not complain */
- return NULL;
+ return NULL;
+ }
}
static gboolean
@@ -1472,6 +1472,8 @@ gabble_jingle_session_new_message (GabbleJingleSession *sess,
gchar *el = NULL, *ns = NULL;
gboolean gtalk_mode = FALSE;
+ g_return_val_if_fail (action != JINGLE_ACTION_UNKNOWN, NULL);
+
g_assert ((action == JINGLE_ACTION_SESSION_INITIATE) ||
(priv->state > JS_STATE_PENDING_CREATED));
g_assert (GABBLE_IS_JINGLE_SESSION (sess));
--
1.5.6.5
More information about the telepathy-commits
mailing list