From 56ab90d0e42aeae4e979ceb50ed3cb4fddba073f Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Fri, 24 Aug 2012 10:30:27 +0000 Subject: [PATCH] eet: add eet_connection_empty. This is needed to fix a bug when multiplexing eet_connection with something else. SVN revision: 75651 --- legacy/eet/ChangeLog | 4 ++++ legacy/eet/NEWS | 1 + legacy/eet/src/lib/Eet.h | 14 ++++++++++++++ legacy/eet/src/lib/eet_connection.c | 6 ++++++ 4 files changed, 25 insertions(+) diff --git a/legacy/eet/ChangeLog b/legacy/eet/ChangeLog index ce6ba0ec78..8079e308f5 100644 --- a/legacy/eet/ChangeLog +++ b/legacy/eet/ChangeLog @@ -611,3 +611,7 @@ 2012-08-09 Cedric Bail * Don't copy string around for nothing. + +2012-08-24 Cedric Bail + + * Add eet_connection_empty. diff --git a/legacy/eet/NEWS b/legacy/eet/NEWS index 4b8370c5ec..a84db86210 100644 --- a/legacy/eet/NEWS +++ b/legacy/eet/NEWS @@ -5,6 +5,7 @@ Changes since Eet 1.6.0: Additions: * Add code to detect overrun and underrun during Eet Data Descriptor setup. + * Add eet_connection_empty. Fixes: * Force destruction of all pending file when shuting down eet. diff --git a/legacy/eet/src/lib/Eet.h b/legacy/eet/src/lib/Eet.h index 864bdf8024..a60f562b43 100644 --- a/legacy/eet/src/lib/Eet.h +++ b/legacy/eet/src/lib/Eet.h @@ -4191,6 +4191,20 @@ eet_connection_received(Eet_Connection *conn, const void *data, size_t size); +/** + * Tell if the Eet_Connection as received some partial data. + * @param conn Connection handler to request. + * @return EINA_TRUE if there is some data pending inside, EINA_FALSE otherwise. + * + * Eet_Connection buffer data until the received data can be unserialized correctly. This + * function let you know if there is some data inside that buffer waiting for more data to + * be received before being processed. + * + * @since 1.7 + * @ingroup Eet_Connection_Group + */ +EAPI Eina_Bool eet_connection_empty(Eet_Connection *conn); + /** * Convert a complex structure and prepare it to be send. * @param conn Connection handler to track. diff --git a/legacy/eet/src/lib/eet_connection.c b/legacy/eet/src/lib/eet_connection.c index 7b6b934596..c044e3d11a 100644 --- a/legacy/eet/src/lib/eet_connection.c +++ b/legacy/eet/src/lib/eet_connection.c @@ -169,6 +169,12 @@ _eet_connection_raw_send(Eet_Connection *conn, return EINA_TRUE; } +EAPI Eina_Bool +eet_connection_empty(Eet_Connection *conn) +{ + return conn->size ? EINA_FALSE : EINA_TRUE; +} + EAPI Eina_Bool eet_connection_send(Eet_Connection *conn, Eet_Data_Descriptor *edd,