gsm_utils.c: in 7bit decoding, first check if the last character was an extension character before doing anything else
diff --git a/src/gsm/gsm_utils.c b/src/gsm/gsm_utils.c
index 6af0a5f..8b1fae0 100644
--- a/src/gsm/gsm_utils.c
+++ b/src/gsm/gsm_utils.c
@@ -146,15 +146,15 @@
 			 (user_data[((i + shift) * 7) >> 3] >>
 			  (((i + shift) * 7) & 7))) & 0x7f;
 
-		if (c == 0x1b && i + 1 < septet_l) {
-			next_is_ext = 1;
-			continue;
-		}
-
 		/* this is an extension character */
 		if (next_is_ext) {
 			next_is_ext = 0;
 			*(text++) = gsm_7bit_alphabet[0x7f + c];
+			continue;
+		}
+
+		if (c == 0x1b && i + 1 < septet_l) {
+			next_is_ext = 1;
 		} else {
 			*(text++) = gsm_septet_lookup(c);
 		}