Skip to content

Commit

Permalink
Implemented solution for indirected sequence type. Trying to check wi…
Browse files Browse the repository at this point in the history
…th CI tests

Add array type indirection support
  • Loading branch information
x0r authored and xor2003 committed Nov 3, 2024
1 parent bcaa114 commit 1a61712
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions TAO/tao/AnyTypeCode/TypeCode_CDR_Extraction.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1392,6 +1392,7 @@ namespace
// Only struct, union, event and valuetype TypeCodes may be
// recursive. However non-recursive ALIAS may be indirected.
|| !(kind == CORBA::tk_struct
|| kind == CORBA::tk_sequence
|| kind == CORBA::tk_union
|| kind == CORBA::tk_value
|| kind == CORBA::tk_event
Expand All @@ -1400,6 +1401,15 @@ namespace
return false;
}

if (CORBA::tk_sequence == kind || CORBA::tk_array == kind) // @todo 1. check if recursion is properly handled 2. check need for other complex types
{
return TAO::TypeCodeFactory::tc_sequence_factory (static_cast<CORBA::TCKind> (kind),
indir_stream,
tc,
indirect_infos,
direct_infos);
}

// Currently all recursive TypeCodes have complex parameter
// lists, meaning they are encoded as CDR encapsulations.
TAO_InputCDRByteOrderGuard boguard (indir_stream);
Expand Down

0 comments on commit 1a61712

Please sign in to comment.