meta-openembedded/meta-networking/recipes-daemons/tftp-hpa/files/fix-writing-emtpy-file.patch
Roy.Li 4cc73f63aa tftp-hpa: fix the empty file writing error
make write_behind to return 0 if a empty file is written, to
distinguish a true writing failure[on which the write_behind
will return -1], then the annoying wrong log will disappear.
    ____
    |Error code 3: Disk full or allocation exceeded
    -----
Signed-off-by: Roy.Li <rongqing.li@windriver.com>
Signed-off-by: Joe MacDonald <joe_macdonald@mentor.com>
2014-10-21 14:54:11 -04:00

40 lines
1.0 KiB
Diff

[PATCH] fix the empty file writting
Upstream-Status: pending
With the feature that checking the disk filled up, the return
value of function write_behind was checked and used to detect
the disk status. While for empty file, without data being
written, this function will return -1 thus the disk filled up
error was miss-raised.
make write_behind to return 0 if written file is empty, to fix
the this bug.
Signed-off-by: Roy.Li <rongqing.li@windriver.com>
---
common/tftpsubs.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/common/tftpsubs.c b/common/tftpsubs.c
index b4ea3f2..9f6cafc 100644
--- a/common/tftpsubs.c
+++ b/common/tftpsubs.c
@@ -198,9 +198,12 @@ int write_behind(FILE * file, int convert)
nextone = !nextone; /* incr for next time */
buf = dp->th_data;
- if (count <= 0)
+ if (count < 0)
return -1; /* nak logic? */
+ if (count == 0)
+ return 0;
+
if (convert == 0)
return write(fileno(file), buf, count);
--
1.9.1