2018-01-24 13:09:30

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: [PATCH BlueZ] obexd: Fix property Size of server transfer

From: Luiz Augusto von Dentz <[email protected]>

OBJECT_SIZE_DELETE is shall not be consider a valid size.
---
obexd/src/manager.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/obexd/src/manager.c b/obexd/src/manager.c
index 78b138c85..70265e445 100644
--- a/obexd/src/manager.c
+++ b/obexd/src/manager.c
@@ -377,7 +377,8 @@ static gboolean transfer_size_exists(const GDBusPropertyTable *property,
struct obex_transfer *transfer = data;
struct obex_session *session = transfer->session;

- return session->size != OBJECT_SIZE_UNKNOWN;
+ return (session->size != OBJECT_SIZE_UNKNOWN &&
+ session->size != OBJECT_SIZE_DELETE);
}

static gboolean transfer_get_size(const GDBusPropertyTable *property,
@@ -386,7 +387,8 @@ static gboolean transfer_get_size(const GDBusPropertyTable *property,
struct obex_transfer *transfer = data;
struct obex_session *session = transfer->session;

- if (session->size == OBJECT_SIZE_UNKNOWN)
+ if (session->size == OBJECT_SIZE_UNKNOWN ||
+ session->size == OBJECT_SIZE_DELETE)
return FALSE;

dbus_message_iter_append_basic(iter, DBUS_TYPE_UINT64, &session->size);
--
2.14.3



2018-01-25 11:25:20

by Luiz Augusto von Dentz

[permalink] [raw]
Subject: Re: [PATCH BlueZ] obexd: Fix property Size of server transfer

Hi,

On Thu, Jan 25, 2018 at 2:43 AM, ERAMOTO Masaya
<[email protected]> wrote:
> Hi Luiz,
>
> Thanks for your great work.
>
> After applying this patch, on my box obexctl retrieves the Size property
> correctly even if it is run before starting to transfer a file.
>
>
> Regards,
> Eramoto
>
> On 01/24/2018 10:09 PM, Luiz Augusto von Dentz wrote:
>> From: Luiz Augusto von Dentz <[email protected]>
>>
>> OBJECT_SIZE_DELETE is shall not be consider a valid size.
>> ---
>> obexd/src/manager.c | 6 ++++--
>> 1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/obexd/src/manager.c b/obexd/src/manager.c
>> index 78b138c85..70265e445 100644
>> --- a/obexd/src/manager.c
>> +++ b/obexd/src/manager.c
>> @@ -377,7 +377,8 @@ static gboolean transfer_size_exists(const GDBusPropertyTable *property,
>> struct obex_transfer *transfer = data;
>> struct obex_session *session = transfer->session;
>>
>> - return session->size != OBJECT_SIZE_UNKNOWN;
>> + return (session->size != OBJECT_SIZE_UNKNOWN &&
>> + session->size != OBJECT_SIZE_DELETE);
>> }
>>
>> static gboolean transfer_get_size(const GDBusPropertyTable *property,
>> @@ -386,7 +387,8 @@ static gboolean transfer_get_size(const GDBusPropertyTable *property,
>> struct obex_transfer *transfer = data;
>> struct obex_session *session = transfer->session;
>>
>> - if (session->size == OBJECT_SIZE_UNKNOWN)
>> + if (session->size == OBJECT_SIZE_UNKNOWN ||
>> + session->size == OBJECT_SIZE_DELETE)
>> return FALSE;
>>
>> dbus_message_iter_append_basic(iter, DBUS_TYPE_UINT64, &session->size);
>>

Applied.


--
Luiz Augusto von Dentz

2018-01-25 04:43:57

by ERAMOTO Masaya

[permalink] [raw]
Subject: Re: [PATCH BlueZ] obexd: Fix property Size of server transfer

Hi Luiz,

Thanks for your great work.

After applying this patch, on my box obexctl retrieves the Size property
correctly even if it is run before starting to transfer a file.


Regards,
Eramoto

On 01/24/2018 10:09 PM, Luiz Augusto von Dentz wrote:
> From: Luiz Augusto von Dentz <[email protected]>
>
> OBJECT_SIZE_DELETE is shall not be consider a valid size.
> ---
> obexd/src/manager.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/obexd/src/manager.c b/obexd/src/manager.c
> index 78b138c85..70265e445 100644
> --- a/obexd/src/manager.c
> +++ b/obexd/src/manager.c
> @@ -377,7 +377,8 @@ static gboolean transfer_size_exists(const GDBusPropertyTable *property,
> struct obex_transfer *transfer = data;
> struct obex_session *session = transfer->session;
>
> - return session->size != OBJECT_SIZE_UNKNOWN;
> + return (session->size != OBJECT_SIZE_UNKNOWN &&
> + session->size != OBJECT_SIZE_DELETE);
> }
>
> static gboolean transfer_get_size(const GDBusPropertyTable *property,
> @@ -386,7 +387,8 @@ static gboolean transfer_get_size(const GDBusPropertyTable *property,
> struct obex_transfer *transfer = data;
> struct obex_session *session = transfer->session;
>
> - if (session->size == OBJECT_SIZE_UNKNOWN)
> + if (session->size == OBJECT_SIZE_UNKNOWN ||
> + session->size == OBJECT_SIZE_DELETE)
> return FALSE;
>
> dbus_message_iter_append_basic(iter, DBUS_TYPE_UINT64, &session->size);
>