Diff between 696b904b2f5fe0f272e4ff7a3390ac7b06160e1a and 85a2f90d5829b68514058dbd520395a506b8c87c

Changed Files

File Additions Deletions Status
obexd/plugins/filesystem.c +3 -1 modified

Full Patch

diff --git a/obexd/plugins/filesystem.c b/obexd/plugins/filesystem.c
index 633036b..2844329 100644
--- a/obexd/plugins/filesystem.c
+++ b/obexd/plugins/filesystem.c
@@ -138,6 +138,7 @@ static void *filesystem_open(const char *name, int oflag, mode_t mode,
 	char *folder;
 	gboolean root;
 	int fd = open(name, oflag, mode);
+	uint64_t avail;
 
 	if (fd < 0) {
 		if (err)
@@ -181,7 +182,8 @@ static void *filesystem_open(const char *name, int oflag, mode_t mode,
 	if (size == NULL)
 		goto done;
 
-	if (buf.f_bsize * buf.f_bavail < *size) {
+	avail = (uint64_t) buf.f_bsize * buf.f_bavail;
+	if (avail < *size) {
 		if (err)
 			*err = -ENOSPC;
 		goto failed;