diff --git a/obexd/plugins/ftp.c b/obexd/plugins/ftp.c
index 874fe2b..6c841d2 100644
--- a/obexd/plugins/ftp.c
+++ b/obexd/plugins/ftp.c
ret = obex_put_stream_start(os, path);
+ if (ret == 0 && obex_get_size(os) != OBJECT_SIZE_DELETE &&
+ obex_get_size(os) != OBJECT_SIZE_UNKNOWN) {
+ manager_emit_transfer_property(ftp->transfer, "Size");
+ }
+
if (ret == 0)
manager_emit_transfer_started(ftp->transfer);
diff --git a/obexd/plugins/opp.c b/obexd/plugins/opp.c
index 777f5f8..2220efd 100644
--- a/obexd/plugins/opp.c
+++ b/obexd/plugins/opp.c
err = obex_put_stream_start(os, path);
+ if (err == 0 && obex_get_size(os) != OBJECT_SIZE_DELETE &&
+ obex_get_size(os) != OBJECT_SIZE_UNKNOWN) {
+ manager_emit_transfer_property(user_data, "Size");
+ }
+
g_free(path);
if (err < 0)
diff --git a/obexd/src/obex.c b/obexd/src/obex.c
index 98d6245..370bfac 100644
--- a/obexd/src/obex.c
+++ b/obexd/src/obex.c
return err;
}
- if (os->size != OBJECT_SIZE_DELETE && os->size != OBJECT_SIZE_UNKNOWN)
- manager_emit_transfer_property(os->service_data, "Size");
-
os->path = g_strdup(filename);
return 0;