aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2018-03-08 23:21:17 +0100
committerHarald Welte <laforge@gnumonks.org>2018-03-12 14:23:57 +0000
commit439e546539b18fba44d0a1606238075663ada575 (patch)
tree574b2bbc650657184496c5cafb3488c032b29788
parenta35a9ca4d4c0aebf14f3ab0b4aad00cb86bb6a32 (diff)
RLCMAC_EncDec: Fix handling of optional LlcBlockHdr
Whenever the OPTIONAL<> construct is used for a member of a record, we have to add an extra set of parenthsis in order to avoid bogus "has no RAW decode method" error messages. It seems the OPTIONAL inherits from Base_Type which will print "which has no RAW decoding method" from its RAW_decode(). Change-Id: Idfaa11db0e2db4be144800b5bccc44d0515220d7
-rw-r--r--library/RLCMAC_EncDec.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/library/RLCMAC_EncDec.cc b/library/RLCMAC_EncDec.cc
index b911c75e..0c1dd841 100644
--- a/library/RLCMAC_EncDec.cc
+++ b/library/RLCMAC_EncDec.cc
@@ -35,7 +35,7 @@ OCTETSTRING enc__RlcmacDlDataBlock(const RlcmacDlDataBlock& si)
in.blocks()[i].hdr()().e() = false;
else
in.blocks()[i].hdr()().e() = true;
- in.blocks()[i].hdr().encode(LlcBlockHdr_descr_, ttcn_buffer, TTCN_EncDec::CT_RAW);
+ in.blocks()[i].hdr()().encode(LlcBlockHdr_descr_, ttcn_buffer, TTCN_EncDec::CT_RAW);
}
}
if (in.blocks().is_bound()) {
@@ -65,7 +65,7 @@ RlcmacDlDataBlock dec__RlcmacDlDataBlock(const OCTETSTRING& stream)
while (1) {
/* decode one more extension octet with LlcBlocHdr inside */
LlcBlock lb;
- lb.hdr().decode(LlcBlockHdr_descr_, ttcn_buffer, TTCN_EncDec::CT_RAW);
+ lb.hdr()().decode(LlcBlockHdr_descr_, ttcn_buffer, TTCN_EncDec::CT_RAW);
ret_val.blocks()[num_llc_blocks++] = lb;
/* if E == '1'B, we can proceed further */
@@ -214,7 +214,7 @@ RlcmacUlDataBlock dec__RlcmacUlDataBlock(const OCTETSTRING& stream)
while (1) {
/* decode one more extension octet with LlcBlocHdr inside */
LlcBlock lb;
- lb.hdr().decode(LlcBlockHdr_descr_, ttcn_buffer, TTCN_EncDec::CT_RAW);
+ lb.hdr()().decode(LlcBlockHdr_descr_, ttcn_buffer, TTCN_EncDec::CT_RAW);
ret_val.blocks()[num_llc_blocks++] = lb;
TTCN_Logger::begin_event(TTCN_Logger::DEBUG_ENCDEC);