As for heap corruption when free()ing from another module on Windows:
this is a topic that confuses me personally. Did you see that actually
happen with Windows 7 and later? I vaguely remember that this was
supposedly fixed in XP or Vista and I haven't experienced any issues
with it, either. I'd love to see some authoritative documentation or a
definitive example.

I need to reply to myself here because I finally found a good explanation
of why this sometimes works (and I turned out to be lucky) and sometimes
fails miserably. It's on Raymond Chen's blog of all places:

https://blogs.msdn.microsoft.com/oldnewthing/20161209-00/?p=94905

(Spoiler: it all depends on how DLLs and programs get linked to the C
runtime, and to which one)

So OIIO really must change in order to cope with all the different
possibilities how program heaps can be structured on Windows.
_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to