{"thread":{"id":"13223","subject":"[PATCH] copy.c: copy_fd - correctly report write errors","startedAt":"2008-04-23T00:22:43Z","lastAt":"2008-04-23T00:22:43Z","messageCount":1,"participants":["Ariel Badichi"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"75023","messageId":"87r6cxpes0.fsf@sneeze.site","threadId":"13223","inReplyTo":null,"subject":"[PATCH] copy.c: copy_fd - correctly report write errors","fromName":"Ariel Badichi","fromEmail":"abadichi@bezeqint.net","sentAt":"2008-04-23T00:22:43Z","receivedAt":"2008-04-23T00:22:43Z","isPatch":true,"sender":{"key":"abadichi@bezeqint.net","avatar":null},"body":"\nPreviously, the errno could have been lost due to an intervening\nclose() call.\n\nThis patch also contains minor cosmetic changes.\n\nSigned-off-by: Ariel Badichi <abadichi@bezeqint.net>\n---\n copy.c |    8 ++++----\n 1 files changed, 4 insertions(+), 4 deletions(-)\n\ndiff --git a/copy.c b/copy.c\nindex afc4fbf..e54d15a 100644\n--- a/copy.c\n+++ b/copy.c\n@@ -9,8 +9,7 @@ int copy_fd(int ifd, int ofd)\n \t\tif (!len)\n \t\t\tbreak;\n \t\tif (len < 0) {\n-\t\t\tint read_error;\n-\t\t\tread_error = errno;\n+\t\t\tint read_error = errno;\n \t\t\tclose(ifd);\n \t\t\treturn error(\"copy-fd: read returned %s\",\n \t\t\t\t     strerror(read_error));\n@@ -25,9 +24,10 @@ int copy_fd(int ifd, int ofd)\n \t\t\t\tclose(ifd);\n \t\t\t\treturn error(\"copy-fd: write returned 0\");\n \t\t\t} else {\n+\t\t\t\tint write_error = errno;\n \t\t\t\tclose(ifd);\n \t\t\t\treturn error(\"copy-fd: write returned %s\",\n-\t\t\t\t\t     strerror(errno));\n+\t\t\t\t\t     strerror(write_error));\n \t\t\t}\n \t\t}\n \t}\n@@ -48,7 +48,7 @@ int copy_file(const char *dst, const char *src, int mode)\n \t}\n \tstatus = copy_fd(fdi, fdo);\n \tif (close(fdo) != 0)\n-\t\treturn error(\"%s: write error: %s\", dst, strerror(errno));\n+\t\treturn error(\"%s: close error: %s\", dst, strerror(errno));\n \n \tif (!status && adjust_shared_perm(dst))\n \t\treturn -1;\n-- \n1.5.5.1.57.g5909c\n"}]}