The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

Image
Jul 17, 2026
Post comments count 5
Post likes count 1

Why has the display control panel pointer truncation bug gone unfixed for so long?

Image
Raymond Chen

It's fixed, but the fix isn't getting there.

Image
Jul 16, 2026
Post comments count 2
Post likes count 1

Speculating on how the buggy control panel extension truncated a value that it had right in front of it

Image
Raymond Chen

Inferring the code's history.

Image
Jul 15, 2026
Post comments count 3
Post likes count 3

The case of the invalid function pointer when shutting down the display control panel

Image
Raymond Chen

Watching the bits disappear.

Image
Jul 14, 2026
Post comments count 5
Post likes count 2

Microspeak: Double-click and drill down

Image
Raymond Chen

Please, tell me more.

Image
Jul 13, 2026
Post comments count 4
Post likes count 3

Why don’t we just make the entire stack out of guard pages?

Image
Raymond Chen

Guard pages all the way down?

Image
Jul 10, 2026
Post comments count 3
Post likes count 2

The case of the mysterious changes to integers when there shouldn’t have been any code generation effect

Image
Raymond Chen

Decoding where those integer came from.

Image
Jul 9, 2026
Post comments count 0
Post likes count 2

I’ve decoded a #pragma detect_mismatch error and fixed the mismatch, but I still get the error

Image
Raymond Chen

You need to rebuild everything that was dependent on the change.

Image
Jul 8, 2026
Post comments count 1
Post likes count 2

The other kind of control flow guard check: The combined validate and call

Image
Raymond Chen

A two-in-one package.

Image
Jul 7, 2026
Post comments count 15
Post likes count 4

How did Windows 95 decide that a setup program ran?

Image
Raymond Chen

It used some heuristics.