RFR: 8307145: windowsaccessbridge.dll is missing 4 critical methods in its C API

Phil Race prr at openjdk.org
Fri May 5 17:38:16 UTC 2023


On Fri, 5 May 2023 15:04:36 GMT, Julian Waters <jwaters at openjdk.org> wrote:

> > FWIW, this is what dumpbin displays for these entries:
> > ```
> >           1    2 0000351C addAccessibilityEventNotification = ?addAccessibilityEventNotification at WinAccessBridge@@QEAAX_J at Z (public: void __cdecl WinAccessBridge::addAccessibilityEventNotification(__int64))
> >           2    4 00003628 addJavaEventNotification = ?addJavaEventNotification at WinAccessBridge@@QEAAX_J at Z (public: void __cdecl WinAccessBridge::addJavaEventNotification(__int64))
> >           3   42 00006D94 removeAccessibilityEventNotification = ?removeAccessibilityEventNotification at WinAccessBridge@@QEAAX_J at Z (public: void __cdecl WinAccessBridge::removeAccessibilityEventNotification(__int64))
> >           4   44 00006EA0 removeJavaEventNotification = ?removeJavaEventNotification at WinAccessBridge@@QEAAX_J at Z (public: void __cdecl WinAccessBridge::removeJavaEventNotification(__int64))
> > ```
> > 
> > 
> >     
> >       
> >     
> > 
> >       
> >     
> > 
> >     
> >   
> > There's no way to get a pointer to an instance of `WinAccessBridge` using the supported interface, and calling these methods with garbage value for `this` would likely crash.
> 
> Dear lord, the Microsoft linker is truly cursed, through and through
> 
> @prrace What sort of testing would need to be done for such a change?

@azuev-java and @kumarabhi006 can help with review and testing of this PR.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/13734#issuecomment-1536570955



More information about the client-libs-dev mailing list