Expand error message if validating maxBufferSize with higher limit
This CLs expands error message when validating buffer descriptor to
indicate when limits are hit that were not provided in the device
requiredLimits.
Bug: 42240683
Change-Id: I81e167c8ff4d0d1cdc8d4bef1a00cec07f208d23
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/217596
Commit-Queue: Fr <beaufort.francois@gmail.com>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>
diff --git a/src/dawn/native/Buffer.cpp b/src/dawn/native/Buffer.cpp
index d33fd96..4781e17 100644
--- a/src/dawn/native/Buffer.cpp
+++ b/src/dawn/native/Buffer.cpp
@@ -461,9 +461,13 @@
"Buffer is mapped at creation but its size (%u) is not a multiple of 4.",
descriptor->size);
- DAWN_INVALID_IF(descriptor->size > device->GetLimits().v1.maxBufferSize,
- "Buffer size (%u) exceeds the max buffer size limit (%u).", descriptor->size,
- device->GetLimits().v1.maxBufferSize);
+ uint64_t maxBufferSize = device->GetLimits().v1.maxBufferSize;
+ if (DAWN_UNLIKELY(descriptor->size > maxBufferSize)) {
+ return DAWN_VALIDATION_ERROR(
+ "Buffer size (%u) exceeds the max buffer size limit (%u).%s", descriptor->size,
+ maxBufferSize,
+ DAWN_INCREASE_LIMIT_MESSAGE(device->GetAdapter(), maxBufferSize, descriptor->size));
+ }
return unpacked;
}