Is your Apple Mac running macOS Monterey leaking memory? It may be due to mouse cursor customization

Sleuthing leads to suspected RAM-gobbling culprit


Apple's macOS Monterey, the iGiant's latest desktop operating system release, turns out to have an insatiable appetite for memory if you use certain apps.

Shortly after the OS update was released on October 25, Apple customers – at least those who avoided installation woes – began to notice that certain apps gobbled an excessive amount of memory, so much so the programs would crash or quit.

There were reports of this sort for Adobe Creative Cloud apps, Microsoft Office, Cinema 4D, and Pages, to name but a few.

Mozilla's Firefox was also affected – 79GB of memory is a lot, even for a browser known for memory consumption. Following an October 10 bug report, filed back just prior to macOS Monterey's release, Mozillans determined that Apple's latest operating system was afflicted by a memory leak that occurs when an app uses a customized cursor.

"On macOS 12 Monterey, using a non-standard cursor size or colors causes a large memory leak in Firefox," the bug report explains. "Firefox version 94 includes a fix that reduces the memory leak, but the problem can still occur. The problem has been reported to Apple and a fix is expected in a future update to macOS 12."

A memory leak happens when application code allocates memory and then fails to free that memory for reuse after it's no longer needed, leading to the app hoarding available memory. When memory keeps being claimed in this way and isn't released, the supply of memory is eventually exhausted and applications are killed off.

In a blog post on Monday, software developer and Electric Light Company founder Howard Oakley proposed that the leak arises from a group of settings in the Accessibility preference pane, which provides interface modification controls.

"The leak appears to occur when the pointer type changes, for example from a standard arrow to an I-beam for the insertion of text," Oakley wrote. "What is most likely is that, when the pointer has been customised using the settings in that pane, the memory used by the previous pointer isn’t freed following a change in pointer type."

Via Twitter, developer Steve Troughton-Smith speculated that the issue may follow from Apple replacing old Objective-C code – where memory is managed manually – with Swift code, which mostly handles memory management automatically.

There are almost certainly other other memory leaks in macOS Monterey, as they have been prior operating system releases and in apps. Software is full of bugs. But the large number of applications affected means Apple should deploy a fix sooner rather than later.

The Register asked Apple for an explanation, and the biz giant hasn't responded. ®

Similar topics


Other stories you might like

Biting the hand that feeds IT © 1998–2021