Browse Source

Fix handling of value that overflows an int

Closes gh-38146
pull/38228/head
Andy Wilkinson 2 years ago
parent
commit
020c2b364e
  1. 2
      spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/reactive/ReactiveMultipartAutoConfiguration.java
  2. 4
      spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/reactive/ReactiveMultipartAutoConfigurationTests.java

2
spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/web/reactive/ReactiveMultipartAutoConfiguration.java

@ -62,7 +62,7 @@ public class ReactiveMultipartAutoConfiguration { @@ -62,7 +62,7 @@ public class ReactiveMultipartAutoConfiguration {
.asInt(DataSize::toBytes)
.to(defaultPartHttpMessageReader::setMaxHeadersSize);
map.from(multipartProperties::getMaxDiskUsagePerPart)
.asInt(DataSize::toBytes)
.as(DataSize::toBytes)
.to(defaultPartHttpMessageReader::setMaxDiskUsagePerPart);
map.from(multipartProperties::getMaxParts).to(defaultPartHttpMessageReader::setMaxParts);
map.from(multipartProperties::getStreaming).to(defaultPartHttpMessageReader::setStreaming);

4
spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/web/reactive/ReactiveMultipartAutoConfigurationTests.java

@ -60,7 +60,7 @@ class ReactiveMultipartAutoConfigurationTests { @@ -60,7 +60,7 @@ class ReactiveMultipartAutoConfigurationTests {
this.contextRunner
.withPropertyValues("spring.webflux.multipart.streaming:true",
"spring.webflux.multipart.max-in-memory-size=1GB", "spring.webflux.multipart.max-headers-size=16KB",
"spring.webflux.multipart.max-disk-usage-per-part=100MB", "spring.webflux.multipart.max-parts=7",
"spring.webflux.multipart.max-disk-usage-per-part=3GB", "spring.webflux.multipart.max-parts=7",
"spring.webflux.multipart.headers-charset:UTF_16")
.run((context) -> {
CodecCustomizer customizer = context.getBean(CodecCustomizer.class);
@ -75,7 +75,7 @@ class ReactiveMultipartAutoConfigurationTests { @@ -75,7 +75,7 @@ class ReactiveMultipartAutoConfigurationTests {
assertThat(partReader).hasFieldOrPropertyWithValue("maxInMemorySize",
Math.toIntExact(DataSize.ofGigabytes(1).toBytes()));
assertThat(partReader).hasFieldOrPropertyWithValue("maxDiskUsagePerPart",
DataSize.ofMegabytes(100).toBytes());
DataSize.ofGigabytes(3).toBytes());
});
}

Loading…
Cancel
Save