diff --git a/renderdoc/driver/gl/gl_overlay.cpp b/renderdoc/driver/gl/gl_overlay.cpp index 0e5fd9ee3..b4eb768de 100644 --- a/renderdoc/driver/gl/gl_overlay.cpp +++ b/renderdoc/driver/gl/gl_overlay.cpp @@ -377,7 +377,7 @@ ResourceId GLReplay::RenderOverlay(ResourceId texid, CompType typeHint, DebugOve idxs.resize(length); gl.glGetBufferSubData( eGL_ELEMENT_ARRAY_BUFFER, offset, - RDCMIN(GLsizeiptr(length - offset), GLsizeiptr(draw->numIndices * draw->indexByteWidth)), + RDCMIN(GLsizeiptr(length - offset), GLsizeiptr(draw->numIndices) * draw->indexByteWidth), &idxs[0]); // unbind the real index buffer diff --git a/renderdoc/driver/vulkan/vk_postvs.cpp b/renderdoc/driver/vulkan/vk_postvs.cpp index 2bd753fbc..41d9515aa 100644 --- a/renderdoc/driver/vulkan/vk_postvs.cpp +++ b/renderdoc/driver/vulkan/vk_postvs.cpp @@ -1293,13 +1293,13 @@ void VulkanReplay::InitPostVSBuffers(uint32_t eventId) if(vi->pVertexBindingDescriptions[vb].inputRate == VK_VERTEX_INPUT_RATE_INSTANCE) { - len = (maxInstance + 1) * vi->pVertexBindingDescriptions[vb].stride; + len = uint64_t(maxInstance + 1) * vi->pVertexBindingDescriptions[vb].stride; offs += drawcall->instanceOffset * vi->pVertexBindingDescriptions[vb].stride; } else { - len = (maxIndex + 1) * vi->pVertexBindingDescriptions[vb].stride; + len = uint64_t(maxIndex + 1) * vi->pVertexBindingDescriptions[vb].stride; offs += drawcall->vertexOffset * vi->pVertexBindingDescriptions[vb].stride; }