-
Kyle Brenneman authored
Reworked the __GLdispatchPatchCallbacks interface, mostly toward fixing issue 37. __GLdispatchPatchCallbacks::initiatePatch now handles the entire patching process, instead of splitting it between initiatePatch, getOffsetHook, and finalizePatch. Added callbacks to __GLdispatchStubPatchCallbacks that are called before and after calling into the vendor library to patch the entrypoints. Changed the documentation to say that the vendor library can only change the entrypoints during the call to initiatePatch. That'll allow libGLdispatch to change the memory protection before and after the app is finished modifying the entrypoints. The callback that a vendor library calls to fetch an entrypoint now returns separate writable and executable addresses.
c7091414