fixed reintroduced problem

diff --git a/skeletons/constr_CHOICE.c b/skeletons/constr_CHOICE.c
index 46fd521..236b9ad 100644
--- a/skeletons/constr_CHOICE.c
+++ b/skeletons/constr_CHOICE.c
@@ -151,8 +151,7 @@
 			if(rval.code != RC_OK) {
 				ASN_DEBUG("%s tagging check failed: %d",
 					td->name, rval.code);
-				consumed_myself += rval.consumed;
-				RETURN(rval.code);
+				return rval;
 			}
 
 			if(ctx->left >= 0) {
@@ -330,6 +329,8 @@
 					/*
 					 * Correctly finished with <0><0>.
 					 */
+					ADVANCE(2);
+					ctx->left++;
 					continue;
 				}
 			} else {
@@ -338,8 +339,7 @@
 				RETURN(RC_FAIL);
 			}
 
-			ADVANCE(2);
-			ctx->left++;
+			/* UNREACHABLE */
 		}
 
 		NEXT_PHASE(ctx);