From 90f3b24edcd24cd19827b46917f004e57560d0d3 Mon Sep 17 00:00:00 2001 From: Erik Booij <118971329+ErikBooijMB@users.noreply.github.com> Date: Tue, 9 Jan 2024 19:00:44 +0100 Subject: [PATCH] fix(go-server): ensure original filename can be deduced from tmp file (#17416) --- .../src/main/resources/go-server/routers.mustache | 4 +++- samples/openapi3/server/petstore/go/go-petstore/go/routers.go | 4 +++- samples/server/petstore/go-api-server/go/routers.go | 4 +++- samples/server/petstore/go-chi-server/go/routers.go | 4 +++- 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/modules/openapi-generator/src/main/resources/go-server/routers.mustache b/modules/openapi-generator/src/main/resources/go-server/routers.mustache index 2dfdc8c01d14..3fe075ec2400 100644 --- a/modules/openapi-generator/src/main/resources/go-server/routers.mustache +++ b/modules/openapi-generator/src/main/resources/go-server/routers.mustache @@ -169,7 +169,9 @@ func readFileHeaderToTempFile(fileHeader *multipart.FileHeader) (*os.File, error defer formFile.Close() - file, err := os.CreateTemp("", fileHeader.Filename) + // Use .* as suffix, because the asterisk is a placeholder for the random value, + // and the period allows consumers of this file to remove the suffix to obtain the original file name + file, err := os.CreateTemp("", fileHeader.Filename+".*") if err != nil { return nil, err } diff --git a/samples/openapi3/server/petstore/go/go-petstore/go/routers.go b/samples/openapi3/server/petstore/go/go-petstore/go/routers.go index 358a6281c80a..07d148352e28 100644 --- a/samples/openapi3/server/petstore/go/go-petstore/go/routers.go +++ b/samples/openapi3/server/petstore/go/go-petstore/go/routers.go @@ -136,7 +136,9 @@ func readFileHeaderToTempFile(fileHeader *multipart.FileHeader) (*os.File, error defer formFile.Close() - file, err := os.CreateTemp("", fileHeader.Filename) + // Use .* as suffix, because the asterisk is a placeholder for the random value, + // and the period allows consumers of this file to remove the suffix to obtain the original file name + file, err := os.CreateTemp("", fileHeader.Filename+".*") if err != nil { return nil, err } diff --git a/samples/server/petstore/go-api-server/go/routers.go b/samples/server/petstore/go-api-server/go/routers.go index 6ad214ba4b66..a22936ca05a6 100644 --- a/samples/server/petstore/go-api-server/go/routers.go +++ b/samples/server/petstore/go-api-server/go/routers.go @@ -140,7 +140,9 @@ func readFileHeaderToTempFile(fileHeader *multipart.FileHeader) (*os.File, error defer formFile.Close() - file, err := os.CreateTemp("", fileHeader.Filename) + // Use .* as suffix, because the asterisk is a placeholder for the random value, + // and the period allows consumers of this file to remove the suffix to obtain the original file name + file, err := os.CreateTemp("", fileHeader.Filename+".*") if err != nil { return nil, err } diff --git a/samples/server/petstore/go-chi-server/go/routers.go b/samples/server/petstore/go-chi-server/go/routers.go index 358a6281c80a..07d148352e28 100644 --- a/samples/server/petstore/go-chi-server/go/routers.go +++ b/samples/server/petstore/go-chi-server/go/routers.go @@ -136,7 +136,9 @@ func readFileHeaderToTempFile(fileHeader *multipart.FileHeader) (*os.File, error defer formFile.Close() - file, err := os.CreateTemp("", fileHeader.Filename) + // Use .* as suffix, because the asterisk is a placeholder for the random value, + // and the period allows consumers of this file to remove the suffix to obtain the original file name + file, err := os.CreateTemp("", fileHeader.Filename+".*") if err != nil { return nil, err }