added warning for when the buffer is not empty after decoding in decmatch
authorBotond Baranyi <botond.baranyi@ericsson.com>
Wed, 27 Jul 2016 11:39:38 +0000 (13:39 +0200)
committerBotond Baranyi <botond.baranyi@ericsson.com>
Wed, 27 Jul 2016 11:39:38 +0000 (13:39 +0200)
Change-Id: I3c41a6eb1a8e3b11682b690feecf2f6e68071dc3
Signed-off-by: Botond Baranyi <botond.baranyi@ericsson.com>
compiler2/ttcn3/TtcnTemplate.cc

index d0a29a51dac3ec744f45dc148380b38a9d7331b6..49fcf9d147a03c5f4b00b58455ef7cda16ab5ae3 100644 (file)
@@ -4539,9 +4539,16 @@ compile_time:
       "%s val;\n"
       // decode the value
       "val.decode(%s_descr_, buff, TTCN_EncDec::CT_%s);\n"
-      // make sure the buffer is empty after decoding and no errors occurred
-      "if (TTCN_EncDec::get_last_error_type() != TTCN_EncDec::ET_NONE || "
-      "buff.get_read_len() != 0) return FALSE;\n"
+      // make sure no errors occurred (these already displayed warnings during
+      // decoding)
+      "if (TTCN_EncDec::get_last_error_type() != TTCN_EncDec::ET_NONE) "
+      "return FALSE;\n"
+      // make sure the buffer is empty after decoding, display a warning otherwise
+      "if (buff.get_read_len() != 0) {\n"
+      "TTCN_warning(\"Decoded content matching failed, because the buffer was not "
+      "empty after decoding. Remaining octets: %%d.\", (int)buff.get_read_len());\n"
+      "return FALSE;\n"
+      "}\n"
       // finally, match the decoded value against the target template
       "return target.match(val%s);\n"
       "}\n"
This page took 0.027402 seconds and 5 git commands to generate.