Skip to content

Commit 04c9b18

Browse files
author
x0r
committed
Implemented solution for indirected sequence type. Trying to check with CI tests
Add array type indirection support
1 parent 8131b2e commit 04c9b18

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

TAO/tao/AnyTypeCode/TypeCode_CDR_Extraction.cpp

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1391,6 +1391,7 @@ namespace
13911391
// Only struct, union, event and valuetype TypeCodes may be
13921392
// recursive. However non-recursive ALIAS may be indirected.
13931393
|| !(kind == CORBA::tk_struct
1394+
|| kind == CORBA::tk_sequence
13941395
|| kind == CORBA::tk_union
13951396
|| kind == CORBA::tk_value
13961397
|| kind == CORBA::tk_event
@@ -1399,6 +1400,15 @@ namespace
13991400
return false;
14001401
}
14011402

1403+
if (CORBA::tk_sequence == kind || CORBA::tk_array == kind) // @todo 1. check if recursion is properly handled 2. check need for other complex types
1404+
{
1405+
return TAO::TypeCodeFactory::tc_sequence_factory (static_cast<CORBA::TCKind> (kind),
1406+
indir_stream,
1407+
tc,
1408+
indirect_infos,
1409+
direct_infos);
1410+
}
1411+
14021412
// Currently all recursive TypeCodes have complex parameter
14031413
// lists, meaning they are encoded as CDR encapsulations.
14041414
TAO_InputCDRByteOrderGuard boguard (indir_stream);

0 commit comments

Comments
 (0)