You're right, there is such problem. In sosel.c, function _SOCK_select_signal:
/* check if sock is on the select waiting list (array) */
// if (!flag)
{
for (i = 0; i < parms->sock_count; i++)
{
if (parms->sock_ptr[i] == sock)
{
break;
}
}
if(i >= parms->sock_count)
{
continue;
}
}
I think just comment out line 2 in the above code snippet should help. (remove the !flag condition).
There will be a new BSD-like select() function in next MQX release. MQX 4.1.0 still has this problem.
You're right, there is such problem. In sosel.c, function _SOCK_select_signal:
/* check if sock is on the select waiting list (array) */
// if (!flag)
{
for (i = 0; i < parms->sock_count; i++)
{
if (parms->sock_ptr[i] == sock)
{
break;
}
}
if(i >= parms->sock_count)
{
continue;
}
}
I think just comment out line 2 in the above code snippet should help. (remove the !flag condition).
There will be a new BSD-like select() function in next MQX release. MQX 4.1.0 still has this problem.