summarylogtreecommitdiffstats
path: root/fixes_segfault_while_putting_large_files_read_from_stdin.patch
diff options
context:
space:
mode:
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.patch58
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);