Changeset 952 for trunk/src/3rdparty/os2


Ignore:
Timestamp:
Aug 9, 2011, 11:11:56 PM (14 years ago)
Author:
Dmitry A. Kuminov
Message:

OS/2: xsystray: Fixed duplicate mouse click notifications.

This was due to the fact that the pointer to the notification data
passed to the client was not fixed up after making a local copy of
this data. As a result it would still point to the shared data cell
that could get already overwritten with a different notificaiton
message by the time it got processed in the client.

Location:
trunk/src/3rdparty/os2/xsystray
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/3rdparty/os2/xsystray/apilib/xsystray.c

    r951 r952  
    223223        PVOID pvMemoryPool = (PVOID)pQmsg->mp2;
    224224
    225         // copy NOTIFYDATA and free it
     225        //
    226226        NOTIFYDATA NotifyData = *pNotifyData;
     227
     228
     229
     230
    227231        FreeNotifyDataPtr(pvMemoryPool, pQmsg->hwnd, pNotifyData);
    228232
  • trunk/src/3rdparty/os2/xsystray/plugin/w_xsystray.h

    r842 r952  
    173173            // ID of the message that is to be sent to the target window
    174174    MPARAM  mp1;
    175             // message parameter (usually: USHORT usIconId, USHORT usNotifyCode)
     175            // message parameter (USHORT usIconId, USHORT usNotifyCode)
    176176    MPARAM  mp2;
    177             // message parameter (usually, a pointer to a struct from the union)
     177            // message parameter (a pointer to a struct from the union)
    178178    union
    179179    {
     
    210210 *
    211211 *      See AllocNotifyDataPtr() for more details about allocating these
    212  *      structures.dd
     212 *      structures.
    213213 */
    214214
Note: See TracChangeset for help on using the changeset viewer.