diff options
Diffstat (limited to 'contrib/npclient/npclient.c')
| -rw-r--r-- | contrib/npclient/npclient.c | 4 | 
1 files changed, 2 insertions, 2 deletions
| diff --git a/contrib/npclient/npclient.c b/contrib/npclient/npclient.c index add5b4c1..42919d8f 100644 --- a/contrib/npclient/npclient.c +++ b/contrib/npclient/npclient.c @@ -349,8 +349,8 @@ NP_EXPORT(int) NP_GetData(tir_data_t * data)      else      {          running = false; -        // clamp to zero -        InterlockedExchange((LONG volatile*) &pMemData->data.DataID, -1); +        // clamp to (-1) if still negative +        (void)InterlockedCompareExchange((LONG volatile*) &pMemData->data.DataID, -1, data_id);      }      data->status = running ? NPCLIENT_STATUS_OK : NPCLIENT_STATUS_DISABLED; | 
