The legacy memory manager in ReactOS has many idiosyncrasies and architectural quirks, issues that have dogged the project for many years now. The ARM team began a rewrite, colorfully named Another Rewrite of the Memory Management Module (ARM3), that partially supplanted the old memory manager but a big chunk of responsibility still lie with it, namely in the form of MEMORY_AREA. Simply put, MEMORY_AREA was the means by which memory address ranges were tracked, tracking which is necessary for things like handling paging.
The incident that ultimately aroused the suspicion of the project technically occurred first but the analysis was concluded afterwards so it was generally treated as the second checkpoint in the road to the revelation. The initial reaction hovered between heavy uncertainty and cautious concern, a concern that only grew over time.
I mentioned last week, that I had started looking at the DDE server support, and it would take a while.
An extremely rare data corruption issue caused by the Portable Structured Exception Handling library was discovered recently, one that is rather interesting in all the factors to come into play to bring it about. PSEH was a library created by KJK::Hyperion and massively overhauled by Timo Kreuzer for its third iteration, intended to bring Structured Exception Handling to GCC. SEH is natively supported by Microsoft's compilers and underpins a lot of error handling on Windows and so was necessary for proper compatibility between ReactOS' components and Windows'.
I know I promised weekly reports but it’s summer time and, although I haven’t really been out on vacation, I have been taking my schedule a lot more loosely than usual.
After fixing the stobject compilation, I set my sights on the file browser menus. I began by trying to figure out how the Windows shell manages the menus, and I realized that most of the actual work was done in the WM_INITMENUPOPUP message handler.