On the overloading of the address-of operator & in smart pointer classes October 10, 2022 Oct 10, 2022 10/10/22 Raymond Chen Different patterns, which means you're never sure what you're going to get.
How can I perform a CopyFile, but also flush the file buffers before the destination handle is closed? October 7, 2022 Oct 7, 2022 10/7/22 Raymond Chen Your callback function can do things with the handle, even extend their lifetime.
The Import Address Table is now write-protected, and what that means for rogue patching October 6, 2022 Oct 6, 2022 10/6/22 Raymond Chen Making a potential attack vector less attractive.
The gotcha of the C++ temporaries that don’t destruct as eagerly as you thought October 5, 2022 Oct 5, 2022 10/5/22 Raymond Chen You have to look for the end of the full expression.
Starting on the other side of this airtight hatchway: Overwhelming the system October 4, 2022 Oct 4, 2022 10/4/22 Raymond Chen It'll take time for things to drain out.
Feel free to stop using IMultiLanguage2::DetectInputCodepage October 3, 2022 Oct 3, 2022 10/3/22 Raymond Chen You should have been keeping your eye on the code page all along.
Debugging coroutine handles: Looking for the source of a one-byte memory corruption September 30, 2022 Sep 30, 2022 09/30/22 Raymond Chen Applying what we know about coroutines.
I did that merge-as-cherry-pick thing, but my change still didn’t merge correctly September 29, 2022 Sep 29, 2022 09/29/22 Raymond Chen A case study of what goes wrong.
Why does COM express GUIDs in a mix of big-endian and little-endian? Why can’t it just pick a side and stick with it? September 28, 2022 Sep 28, 2022 09/28/22 Raymond Chen Oh, it does pick a side. It's just that some dashes are missing.
Microspeak: Break glass September 27, 2022 Sep 27, 2022 09/27/22 Raymond Chen Metaphorically breaking the glass in case of emergency.