context sensitivity

diff --git a/skeletons/constr_CHOICE.c b/skeletons/constr_CHOICE.c
index 49bd06c..4e90bbd 100644
--- a/skeletons/constr_CHOICE.c
+++ b/skeletons/constr_CHOICE.c
@@ -639,7 +639,7 @@
 		/*
 		 * Get the next part of the XML stream.
 		 */
-		ch_size = xer_next_token(buf_ptr, size, &ch_type);
+		ch_size = xer_next_token(&ctx->context, buf_ptr, size, &ch_type);
 		switch(ch_size) {
 		case -1: RETURN(RC_FAIL);
 		case 0:  RETURN(RC_WMORE);
@@ -667,6 +667,7 @@
 				continue;
 			case 1:
 				ctx->phase = 3;
+				/* Fall through */
 			case 0:
 				XER_ADVANCE(ch_size);
 				continue;