Read only archive ; use https://github.com/JacORB/JacORB/issues for new issues

Bug 1021

Summary: Incomplete handling of jacorb.interop.indirection_encoding_disable property
Product: JacORB Reporter: Amadeu A. Barbosa Jr <amadeu>
Component: ORBAssignee: Mailinglist to track bugs <jacorb-bugs>
Status: NEW ---    
Severity: normal CC: jacorb
Priority: P5    
Version: 3.6.1   
Hardware: PC   
OS: All   
Attachments: Patch to workaround the problem disabling indirection tag on CDROutputStream
Including missing test of the disabling indirection property

Description Amadeu A. Barbosa Jr 2015-09-04 15:27:56 UTC
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.
Comment 1 Amadeu A. Barbosa Jr 2015-10-09 15:16:18 UTC
(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.
Comment 2 Amadeu A. Barbosa Jr 2015-10-09 15:24:55 UTC
Created attachment 471 [details]
Including missing test of the disabling indirection property
Comment 3 Nick Cross 2016-01-28 03:16:45 UTC
Do you have any test cases for this? (ideally pure java)

Can you add a pull request at https://github.com/JacORB/JacORB/ ?