Heh, I had 8 or 9 tray icons before I restarted aMSN.
I made these changes to trayicon.tcl:
Anni@prospero /cygdrive/c/Program Files/aMSN/scripts
$ diff trayicon.tcl.orig trayicon.tcl
52a53,54
> puts "trayicon_init was called, statusicon is $statusicon"
>
73a76
> puts "trayicon_init adding a wintrayicon"
207a211
> puts "statusicon_proc was called, statusicon is $statusicon, status is $status, systemtray_exist is $systemtray_
exist"
449a454
> puts "remove_icon was called, icon is $icon, systemtray_exist is $systemtray_exist"
457a463
> puts "restart_tray was called"
543a550,551
> puts "addTrayIcon was called, name is $name"
>
The output so far after hibernating once and starting up again (which created 1 extra icon) was:
trayicon_init was called, statusicon is 0
trayicon_init adding a wintrayicon
statusicon_proc was called, statusicon is 1, status is FLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is IDL, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is IDL, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is AWY, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is IDL, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is IDL, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is IDL, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is AWY, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is IDL, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is FLN, systemtray_exist is 1
(hibernated here I think)
statusicon_proc was called, statusicon is 1, status is FLN, systemtray_exist is 1
statusicon_proc was called, statusicon is 1, status is NLN, systemtray_exist is 1
How do I put timestamps in the messages?
Anyway, I don't think that tells us a hell of a lot, it doesn't seem to be making any extra unnecessary calls to create new icons. Any suggestions?
ETA: timestamps added using
puts "[clock format [clock seconds] -format "%Y-%m-%d %T"] ... "