are missing the sending of the second argument bDelete,
old code:
Quote
...
void CTrayDialog::TraySetIcon(UINT nResourceID, bool bDelete)
{
TraySetIcon(AfxGetApp()->LoadIcon(nResourceID));
}
void CTrayDialog::TraySetIcon(LPCTSTR lpszResourceName, bool bDelete)
{
TraySetIcon(AfxGetApp()->LoadIcon(lpszResourceName));
}
...
void CTrayDialog::TraySetIcon(UINT nResourceID, bool bDelete)
{
TraySetIcon(AfxGetApp()->LoadIcon(nResourceID));
}
void CTrayDialog::TraySetIcon(LPCTSTR lpszResourceName, bool bDelete)
{
TraySetIcon(AfxGetApp()->LoadIcon(lpszResourceName));
}
...
new code:
Quote
...
void CTrayDialog::TraySetIcon(UINT nResourceID, bool bDelete)
{
TraySetIcon(AfxGetApp()->LoadIcon(nResourceID), bDelete /* Avi3k: fix arg */);
}
void CTrayDialog::TraySetIcon(LPCTSTR lpszResourceName, bool bDelete)
{
TraySetIcon(AfxGetApp()->LoadIcon(lpszResourceName), bDelete /* Avi3k: fix arg */);
}
...
void CTrayDialog::TraySetIcon(UINT nResourceID, bool bDelete)
{
TraySetIcon(AfxGetApp()->LoadIcon(nResourceID), bDelete /* Avi3k: fix arg */);
}
void CTrayDialog::TraySetIcon(LPCTSTR lpszResourceName, bool bDelete)
{
TraySetIcon(AfxGetApp()->LoadIcon(lpszResourceName), bDelete /* Avi3k: fix arg */);
}
...
since the default value is false, it might cause the icon
not to be destroyed but i haven't checked the calls to
these functions so i'm not sure if that's intentional or a bug

Avi3k