IShellFolder support#524
Conversation
…nterface et al don't crash the whole JVM
d611eb6 to
931cf53
Compare
There was a problem hiding this comment.
Sorry to be a pest, can you please make this look like the other lines "Added com.sun....", this is otherwise particularly confusing to non Windows people.
|
This is close. It needs some more test work, particularly for the big you fixed with REFIID. Thanks! Also port the documentation to the interfaces into JavaDoc please. |
|
Finally had time to look at this project again. Documentation added as requested, and the test now throws asserts on failure. Not sure how to test the REFIID thing. Structure has non-empty constructors, so calling those when subclassing seems like the right thing to do. Especially in cases like below, where the constructor parameter was just flat out ignored.
|
There was a problem hiding this comment.
Good catch. The the Pointer-based constructor is omitted, JNA still does the right thing (albeit less efficiently), but if the constructor is there, it better be correct. Depending on how this is used, you may want to call .read() after the super() call.
Motivation: How early data support was implemented was incorrect. We should only indicate early data is ready when it really is. Modifications: - Fix implementation to only notify about early data readiness when it is actually the case - Fix unit test Result: Correctly handle and support early data
I needed to wrap IShellFolder so I can enumerate objects in My Computer. Along the way I fixed Guid.REFIID and added a few definitions into other libraries too. The IShellFolder test uses all the added library functions, so they get tested via that.