X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fbackends%2Fvulkan%2Ftransferqueue.h;h=b11b4503d59c78a0a60c77c2c905135ad714f57e;hp=b8719d627513bd8962dec3df4c1b52ddd2a8dbc5;hb=5c35768c310847df816d216eecf8fa2e93f5f8b8;hpb=682d3ceda19df700ce6590028717e4f0042783ec diff --git a/source/backends/vulkan/transferqueue.h b/source/backends/vulkan/transferqueue.h index b8719d62..b11b4503 100644 --- a/source/backends/vulkan/transferqueue.h +++ b/source/backends/vulkan/transferqueue.h @@ -31,7 +31,7 @@ private: struct PendingTransfer { unsigned order = 0; - unsigned buffer_index = 0; + int buffer_index = -1; std::size_t offset = 0; std::size_t size = 0; std::function synchronize; @@ -63,7 +63,7 @@ void *TransferQueue::prepare_transfer(void *object, bool ordered, std::size_t si PendingTransfer &pt = prepare_transfer(object, ordered, size); pt.synchronize = std::forward(synchronize); pt.transfer = std::forward(transfer); - return static_cast(buffers[pt.buffer_index].mapped_address)+pt.offset; + return (pt.buffer_index<0 ? 0 : static_cast(buffers[pt.buffer_index].mapped_address)+pt.offset); } } // namespace GL