diff options
Diffstat (limited to 'fixes_segfault_while_putting_large_files_read_from_stdin.patch')
-rw-r--r-- | fixes_segfault_while_putting_large_files_read_from_stdin.patch | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/fixes_segfault_while_putting_large_files_read_from_stdin.patch b/fixes_segfault_while_putting_large_files_read_from_stdin.patch deleted file mode 100644 index a177a97f7c7c..000000000000 --- a/fixes_segfault_while_putting_large_files_read_from_stdin.patch +++ /dev/null @@ -1,58 +0,0 @@ -From 05deb102556cd8a06da0940f90f7d22e4f61f162 Mon Sep 17 00:00:00 2001 -From: "sergey.dobrodey" <sergey.dobrodey@hotmail.com> -Date: Mon, 2 Oct 2017 13:13:32 +0300 -Subject: [PATCH] fixes https://github.com/bji/libs3/issues/21 - ---- - src/response_headers_handler.c | 3 ++- - src/s3.c | 7 +++++-- - 2 files changed, 7 insertions(+), 3 deletions(-) - -diff --git a/src/response_headers_handler.c b/src/response_headers_handler.c -index 70046bc..bc4c175 100644 ---- a/src/response_headers_handler.c -+++ b/src/response_headers_handler.c -@@ -145,7 +145,8 @@ void response_headers_handler_add(ResponseHeadersHandler *handler, - string_multibuffer_add(handler->responsePropertyStrings, c, - valuelen, fit); - } -- else if (!strncasecmp(header, "ETag", namelen)) { -+ else if ((!strncasecmp(header, "ETag", namelen)) -+ || (!strncasecmp(header, "Etag", namelen))) { // some servers reply with Etag header - responseProperties->eTag = - string_multibuffer_current(handler->responsePropertyStrings); - string_multibuffer_add(handler->responsePropertyStrings, c, -diff --git a/src/s3.c b/src/s3.c -index b8d4405..88d3ddb 100644 ---- a/src/s3.c -+++ b/src/s3.c -@@ -489,6 +489,7 @@ static void growbuffer_read(growbuffer **gb, int amt, int *amtReturn, - buf->next->prev = buf->prev; - } - free(buf); -+ buf = NULL; - } - } - -@@ -2436,6 +2437,7 @@ static void put_object(int argc, char **argv, int optindex, - MULTIPART_CHUNK_SIZE); - - MultipartPartData partData; -+ memset(&partData, 0, sizeof(MultipartPartData)); - int partContentLength = 0; - - S3MultipartInitialHandler handler = { -@@ -2486,10 +2488,11 @@ static void put_object(int argc, char **argv, int optindex, - upload: - todoContentLength -= MULTIPART_CHUNK_SIZE * manager.next_etags_pos; - for (seq = manager.next_etags_pos + 1; seq <= totalSeq; seq++) { -- memset(&partData, 0, sizeof(MultipartPartData)); - partData.manager = &manager; - partData.seq = seq; -- partData.put_object_data = data; -+ if (partData.put_object_data.gb==NULL) { -+ partData.put_object_data = data; -+ } - partContentLength = ((contentLength > MULTIPART_CHUNK_SIZE) ? - MULTIPART_CHUNK_SIZE : contentLength); - printf("%s Part Seq %d, length=%d\n", srcSize ? "Copying" : "Sending", seq, partContentLength); |