My intention was to get some general responses on two things: Memory
Management in a program on SnowLeopard (strictly needed?) and the
need for code signing.
Code signing has nothing to do with app stability. What it does is
guarantee to the system at runtime that the code has not been tampered
with, i.e. by malware, since you built the app. It's a system security
There are a lot of changes under the hood in 10.6. If your app isn't
compatible, it's likely that you've been calling some API in a way
that's technically incorrect but happened to work in 10.5 but no
longer does in 10.6. Make sure to turn on as many warnings as possible
in your build settings (adding the "-Wall" flag is a good idea) and
enable "treat warnings as errors".