mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-30 19:24:23 +01:00
Move pushbuffer deletion to the render manager.
This commit is contained in:
1 parent
feb3870f7d
commit
76138fee6d
2 files changed
+20
-3
No files matched your search
@@ -13,7 +13,12 @@
|
||||
#define VLOG(...)
|
||||
#endif
|
||||
|
||||
// Runs on the GPU thread.
|
||||
void GLDeleter::Perform() {
|
||||
for (auto pushBuffer : pushBuffers) {
|
||||
delete pushBuffer;
|
||||
}
|
||||
pushBuffers.clear();
|
||||
for (auto shader : shaders) {
|
||||
delete shader;
|
||||
}
|
||||
@@ -638,10 +643,13 @@ bool GLPushBuffer::AddBuffer() {
|
||||
return true;
|
||||
}
|
||||
|
||||
// Executed on the render thread!
|
||||
void GLPushBuffer::Destroy() {
|
||||
for (BufInfo &info : buffers_) {
|
||||
// This will automatically unmap device memory, if needed.
|
||||
render_->DeleteBuffer(info.buffer);
|
||||
// NOTE: We immediately delete the buffer, don't go through the deleter, since we're on the render thread.
|
||||
// render_->DeleteBuffer(info.buffer);
|
||||
delete info.buffer;
|
||||
FreeAlignedMemory(info.localMemory);
|
||||
}
|
||||
buffers_.clear();
|
||||
|
||||
Reference in new issue
Block a user