[backend/drive] Fix duplicated dots in file extensions in some circumstances
This commit is contained in:
parent
aac4be5893
commit
7b3e9bbbca
2 changed files with 4 additions and 4 deletions
|
@ -337,7 +337,7 @@ public class DriveService(
|
||||||
Stream input, DriveFileCreationRequest request
|
Stream input, DriveFileCreationRequest request
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
var accessKey = GenerateAccessKey(extension: Path.GetExtension(request.Filename));
|
var accessKey = GenerateAccessKey(extension: Path.GetExtension(request.Filename).TrimStart('.'));
|
||||||
var url = await StoreFileVersion(input, accessKey, request.Filename, request.MimeType);
|
var url = await StoreFileVersion(input, accessKey, request.Filename, request.MimeType);
|
||||||
return (Stub, accessKey, url);
|
return (Stub, accessKey, url);
|
||||||
}
|
}
|
||||||
|
@ -442,7 +442,7 @@ public class DriveService(
|
||||||
{
|
{
|
||||||
if (skipImageProcessing)
|
if (skipImageProcessing)
|
||||||
{
|
{
|
||||||
var origFormat = new ImageFormat.Keep(Path.GetExtension(request.Filename), request.MimeType);
|
var origFormat = new ImageFormat.Keep(Path.GetExtension(request.Filename).TrimStart('.'), request.MimeType);
|
||||||
return [new ImageVersion(KeyEnum.Original, origFormat)];
|
return [new ImageVersion(KeyEnum.Original, origFormat)];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -469,7 +469,7 @@ public class DriveService(
|
||||||
return config.Format switch
|
return config.Format switch
|
||||||
{
|
{
|
||||||
ImageFormatEnum.None => null,
|
ImageFormatEnum.None => null,
|
||||||
ImageFormatEnum.Keep => new ImageFormat.Keep(Path.GetExtension(request.Filename), request.MimeType),
|
ImageFormatEnum.Keep => new ImageFormat.Keep(Path.GetExtension(request.Filename).TrimStart('.'), request.MimeType),
|
||||||
ImageFormatEnum.Webp => new ImageFormat.Webp(config.WebpCompressionMode, GetQualityFactor(), GetTargetRes()),
|
ImageFormatEnum.Webp => new ImageFormat.Webp(config.WebpCompressionMode, GetQualityFactor(), GetTargetRes()),
|
||||||
ImageFormatEnum.Avif => new ImageFormat.Avif(config.AvifCompressionMode, GetQualityFactor(), config.AvifBitDepth, GetTargetRes()),
|
ImageFormatEnum.Avif => new ImageFormat.Avif(config.AvifCompressionMode, GetQualityFactor(), config.AvifBitDepth, GetTargetRes()),
|
||||||
ImageFormatEnum.Jxl => new ImageFormat.Jxl(config.JxlCompressionMode, GetQualityFactor(), config.JxlEffort, GetTargetRes()),
|
ImageFormatEnum.Jxl => new ImageFormat.Jxl(config.JxlCompressionMode, GetQualityFactor(), config.JxlEffort, GetTargetRes()),
|
||||||
|
|
|
@ -147,7 +147,7 @@ public class ImageProcessor
|
||||||
[SetsRequiredMembers]
|
[SetsRequiredMembers]
|
||||||
public ProcessedImage(IImageInfo info, Stream original, DriveFileCreationRequest request) : this(info)
|
public ProcessedImage(IImageInfo info, Stream original, DriveFileCreationRequest request) : this(info)
|
||||||
{
|
{
|
||||||
var format = new ImageFormat.Keep(Path.GetExtension(request.Filename), request.MimeType);
|
var format = new ImageFormat.Keep(Path.GetExtension(request.Filename).TrimStart('.'), request.MimeType);
|
||||||
RequestedFormats = new Dictionary<ImageVersion, Func<Task<Stream>>?>
|
RequestedFormats = new Dictionary<ImageVersion, Func<Task<Stream>>?>
|
||||||
{
|
{
|
||||||
[new ImageVersion(KeyEnum.Original, format)] = () => Task.FromResult(original)
|
[new ImageVersion(KeyEnum.Original, format)] = () => Task.FromResult(original)
|
||||||
|
|
Loading…
Add table
Reference in a new issue