On Dec 15, 2009, at 12:41:32, MyztikJenz wrote: > The call to ProcessInformationCopyDictionary() in isGrowlRunning is > not checked for a null return, which causes a crash in the > subsequent CFDictionaryGetValue() if the PSN is no longer valid.
Your fix suffers from the same problem: When it continues, the loop condition will pass this no-longer-valid PSN to GetNextProcess. The documentation doesn't define what will happen; one of the better cases is that GetNextProcess will return procNotFound, which is the loop's termination condition. Thus, the loop will exit before it finds the GHA process (if there is one). A worse possibility is that it could crash. The only true fix I can see is to try the loop repeatedly until we either find a GHA process or reach the end of the process list. -- You received this message because you are subscribed to the Google Groups "Growl Discuss" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/growldiscuss?hl=en.
