Created attachment 470 [details] Patch to workaround the problem disabling indirection tag on CDROutputStream TAO 6.3.0 is still not working properly with indirection tags on CDR unmarshaling. I was working on an interop test between TAO and JacORB and the property jacorb.interop.indirection_encoding_disable isn't working as argued to. When I setted up jacorb.interop.indirection_encoding_disable=on the CDR output still uses indirection flag (0xffffffff) and proper offsets about last position of that typecode on stream. I found (in the JacORB master github code) some points missing CDROutputStream.isIndirectionEnabled test before writing 0xffffffff on the stream. I attached a diff below to demonstrate where it is missing and another simple refactoring in ComplexTypeCodeWriter. I don't know the code, so it's just a guess. It worked for me but sorry, it isn't an good solution for the problem.
(In reply to Amadeu A. Barbosa Jr from comment #0) > Created attachment 470 [details] > Patch to workaround the problem disabling indirection tag on CDROutputStream > I attached a diff below to demonstrate where it is missing and another > simple refactoring in ComplexTypeCodeWriter. I don't know the code, so it's > just a guess. It worked for me but sorry, it isn't an good solution for the > problem. I was wrong in that refactoring, I've miss understood some portion of ComplexTypeCodeWriter code. Sorry for my mistake. I'll attach an updated diff with the missing checks about indirection tag only.
Created attachment 471 [details] Including missing test of the disabling indirection property
Do you have any test cases for this? (ideally pure java) Can you add a pull request at https://github.com/JacORB/JacORB/ ?