Diff between ebf7f236a457a80ca474384e0d9244b7c4ad51ab and cdcbdc3f2f5bbec8e5d9aed6377c502add8561a9

Changed Files

File Additions Deletions Status
obexd/src/obex.c +5 -1 modified

Full Patch

diff --git a/obexd/src/obex.c b/obexd/src/obex.c
index cb47794..6d11af0 100644
--- a/obexd/src/obex.c
+++ b/obexd/src/obex.c
@@ -826,6 +826,8 @@ done:
 
 static void cmd_put(struct obex_session *os, obex_t *obex, obex_object_t *obj)
 {
+	int err;
+
 	if (!os->service) {
 		OBEX_ObjectSetRsp(obj, OBEX_RSP_FORBIDDEN, OBEX_RSP_FORBIDDEN);
 		return;
@@ -842,7 +844,9 @@ static void cmd_put(struct obex_session *os, obex_t *obex, obex_object_t *obj)
 			return;
 	}
 
-	os->service->put(os, os->service_data);
+	err = os->service->put(os, os->service_data);
+	if (err < 0)
+		os_set_response(obj, err);
 }
 
 static void obex_event(obex_t *obex, obex_object_t *obj, gint mode,