Jump to page content

Bug of the moment 2006-04-05

While closing an Info window in Tiger’s Finder, I had a twitch and pressed down on the mouse button again, keeping it held over the next window below (over its close button, as you will see in the picture), and something funny happened – the Info window become stuck on the screen:

For as long as I kept my finger on the mouse button, it didn’t move. As I released the button, it continued its zoom process and disappeared. I like reproducible bugs the best, so I set about trying to reproduce it, and lo, it is reproducible. As long as the cursor is over another window (of any process) when the Info window starts zooming out, when you hold down the mouse button, the zoom process will hang:

Timing is the key, however, and in most cases you will only catch it just as it’s about to disappear:

Although in many cases you will miss it altogether. This would appear to be a rather harmless example of a more serious issue, namely that the Mac OS X window manager is not properly threaded (or simply uses a bad semaphore model).

Today’s episode is also a double bill, so here we go: the bizarre subject of Unicode filenames. Something I have only just realised is that Windows 2000 has full support for Unicode filenames, and I can demonstrate this because, for the sake of more aesthetically pleasing Web browsing, I installed a large number of foreign character sets with Windows. So let’s try feeding some Unicode filenames to various programs, starting with Firefox and Hebrew:

We know Firefox understands Unicode perfectly, except when it’s receiving it from the Windows operating system. How about giving some Cyrillic to RegEdit?

And lo! We have another example of a broken file association in Explorer. As first mentioned in the 2006-01-07 episode, some default associations in Windows 2000 lack the quotation marks around the %1 parameter, e.g. regedit.exe %1, which triggers 8.3 naming mode in Windows. Windows has no clue about Cyrillic as far as I can tell, it just seems to make up a random Roman name for the file. If you put the quotation marks in around the parameter in the file association, RegEdit shows us that it, itself, understands Unicode:

My favourite of all is the venerable Windows Media Player 6 (I dislike all versions made since), which produced the following error message when asked to open a file with a π in the name:

Note carefully the error message: the filename in the error message is intact. So we know it received the filename just fine, but goes and chokes on it later! (I imagine it is feeding Unicode to a non-Unicode API call to open the file.)

Posted 5th April 2006 – Comments and questions?