Home windows 7 took ages to load if you happen to had a strong background. Now we all know why
Home windows 7 got here onto the market in 2009 and put Microsoft again on the street to success after Home windows Vista’s annoying failures. However Home windows 7 was not with out its faults, as this curious story proves.
Some customers apparently encountered a vexing drawback on the time: in the event that they set a single-color picture because the background, their Home windows 7 PC at all times took 30 seconds to start out the working system and swap from the welcome display to the desktop.
In a latest weblog publish, Microsoft veteran Raymond Chen explains the precise cause for this. In response to him, a easy programming error meant that customers needed to wait longer for the system in addition. After logging in, Home windows 7 first arrange the desktop piece by piece, i.e. the taskbar, the desktop window, icons for purposes, and even the background picture.
The system waited patiently for all parts to complete loading and obtained suggestions from every particular person part. Or, it switched from the welcome display to the desktop after 30 seconds if it didn’t obtain any suggestions.
The issue right here: The code for the message that the background picture is prepared was positioned inside the background picture bitmap code, which signifies that the message by no means appeared if you happen to didn’t have an actual background picture bitmap. And a single colour isn’t such a bitmap.
The consequence: the logon system waited in useless for the message that the background has completed loading, so Home windows 7 by no means began till the 30 second fallback activated and despatched customers to the desktop.
The issue might additionally happen if customers had activated the “Conceal desktop icons” group coverage. This was resulting from the truth that such insurance policies had been solely added after the primary code had been written and known as by an If assertion. Nevertheless, Home windows 7 was additionally unable to recognise this at first and due to this fact took longer to load.
Chen exhibits the next code snippet for instance as an example the issue:
// Authentic code InitialiseDesktopIcons() { bind to the desktop folder enumerate the icons add them to the display Report(DesktopIconsReady); } // Up to date with group coverage assist InitialiseDesktopIcons() { if (desktop icons allowed by coverage) { bind to the desktop folder enumerate the icons add them to the display Report(DesktopIconsReady); } }
Unsolved for months
In response to Chen, it took a number of months for Microsoft to acknowledge the issue. In November 2009, it was then mounted by an replace and has not been an issue since, however is a pleasant anecdote for the varied errors that may happen throughout programming.
Additional studying: How a Janet Jackson track crashed laptops for 9 years
This text initially appeared on our sister publication PC-WELT and was translated and localized from German.