forked from enlightenment/efl
evas/async_events: fix async events counting
Before we returned the number of async events handled. Even if nobody uses that let's fix it. SVN revision: 82775
This commit is contained in:
parent
3701b41ac9
commit
90bba3a87e
|
@ -123,10 +123,25 @@ _evas_async_events_process_single(void)
|
||||||
int ret, wakeup;
|
int ret, wakeup;
|
||||||
|
|
||||||
ret = read(_fd_read, &wakeup, sizeof(int));
|
ret = read(_fd_read, &wakeup, sizeof(int));
|
||||||
|
if (ret < 0)
|
||||||
|
{
|
||||||
|
switch (errno)
|
||||||
|
{
|
||||||
|
case EBADF:
|
||||||
|
case EINVAL:
|
||||||
|
case EIO:
|
||||||
|
case EISDIR:
|
||||||
|
_fd_read = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
if (ret == sizeof(int))
|
if (ret == sizeof(int))
|
||||||
{
|
{
|
||||||
Evas_Event_Async *ev;
|
Evas_Event_Async *ev;
|
||||||
unsigned int len, max;
|
unsigned int len, max;
|
||||||
|
int nr;
|
||||||
|
|
||||||
eina_lock_take(&async_lock);
|
eina_lock_take(&async_lock);
|
||||||
|
|
||||||
|
@ -144,6 +159,7 @@ _evas_async_events_process_single(void)
|
||||||
eina_lock_release(&async_lock);
|
eina_lock_release(&async_lock);
|
||||||
|
|
||||||
DBG("Evas async events queue length: %u", len);
|
DBG("Evas async events queue length: %u", len);
|
||||||
|
nr = len;
|
||||||
|
|
||||||
while (len > 0)
|
while (len > 0)
|
||||||
{
|
{
|
||||||
|
@ -152,22 +168,10 @@ _evas_async_events_process_single(void)
|
||||||
len--;
|
len--;
|
||||||
}
|
}
|
||||||
|
|
||||||
return 1;
|
return nr;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ret < 0)
|
return 0;
|
||||||
{
|
|
||||||
switch (errno)
|
|
||||||
{
|
|
||||||
case EBADF:
|
|
||||||
case EINVAL:
|
|
||||||
case EIO:
|
|
||||||
case EISDIR:
|
|
||||||
_fd_read = -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return ret;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
EAPI int
|
EAPI int
|
||||||
|
|
Loading…
Reference in New Issue