How 1Password Injects Code Into 64-Bit Safari on Snow Leopard

Nice detective work by Kevin Ballard:

One of the big changes in Snow Leopard is the move to 64-bit applications system-wide. This includes Safari. Unfortunately, this change breaks all of the Safari plugins out there, including mine. There’s two reasons for this. The first is simply that these plugins are all 32-bit binaries, and a 64-bit app cannot load a 32-bit binary. The second, and significantly harder obstacle, is that the entire Input Manager mechanism has been eliminated in 64-bit apps.

The answer? They’re injecting code via a scripting addition — scripting additions being one of the few remaining plugin types that still load in 64-bit apps.

Monday, 21 September 2009