From 06057a99a653b83389447a9c56d926c463317b47 Mon Sep 17 00:00:00 2001 From: riperiperi Date: Fri, 11 Dec 2020 23:31:39 +0000 Subject: End empty gl queries before returning them to the pool. (#1806) --- Ryujinx.Graphics.OpenGL/Queries/BufferedQuery.cs | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'Ryujinx.Graphics.OpenGL/Queries/BufferedQuery.cs') diff --git a/Ryujinx.Graphics.OpenGL/Queries/BufferedQuery.cs b/Ryujinx.Graphics.OpenGL/Queries/BufferedQuery.cs index b4c5259c..a87655be 100644 --- a/Ryujinx.Graphics.OpenGL/Queries/BufferedQuery.cs +++ b/Ryujinx.Graphics.OpenGL/Queries/BufferedQuery.cs @@ -44,14 +44,17 @@ namespace Ryujinx.Graphics.OpenGL.Queries GL.BeginQuery(_type, Query); } - public unsafe void End() + public unsafe void End(bool withResult) { GL.EndQuery(_type); - GL.BindBuffer(BufferTarget.QueryBuffer, _buffer); + if (withResult) + { + GL.BindBuffer(BufferTarget.QueryBuffer, _buffer); - Marshal.WriteInt64(_bufferMap, -1L); - GL.GetQueryObject(Query, GetQueryObjectParam.QueryResult, (long*)0); + Marshal.WriteInt64(_bufferMap, -1L); + GL.GetQueryObject(Query, GetQueryObjectParam.QueryResult, (long*)0); + } } public bool TryGetResult(out long result) -- cgit v1.2.3