Browse Source

D3D12: Fixed crash when PIX is not present. (#3489)

Branimir Karadžić 1 month ago
parent
commit
a617e13eeb
1 changed files with 12 additions and 2 deletions
  1. 12 2
      src/renderer_d3d12.cpp

+ 12 - 2
src/renderer_d3d12.cpp

@@ -702,9 +702,19 @@ namespace bgfx { namespace d3d12
 	}
 	}
 
 
 #if BGFX_CONFIG_DEBUG_ANNOTATION && (BX_PLATFORM_WINDOWS || BX_PLATFORM_WINRT)
 #if BGFX_CONFIG_DEBUG_ANNOTATION && (BX_PLATFORM_WINDOWS || BX_PLATFORM_WINRT)
-	PIXEventsThreadInfo* WINAPI stubPIXGetThreadInfo()
+
+	struct StubPIXEventsThreadInfo
 	{
 	{
-		return NULL;
+		void* block;
+		void* biasedLimit;
+		void* destination;
+	};
+
+	static StubPIXEventsThreadInfo s_pixEventsThreadInfo = {};
+
+	static struct PIXEventsThreadInfo* WINAPI stubPIXGetThreadInfo()
+	{
+		return (struct PIXEventsThreadInfo*)& s_pixEventsThreadInfo;
 	}
 	}
 
 
 	uint64_t WINAPI stubPIXEventsReplaceBlock(PIXEventsThreadInfo* _threadInfo, bool _getEarliestTime)
 	uint64_t WINAPI stubPIXEventsReplaceBlock(PIXEventsThreadInfo* _threadInfo, bool _getEarliestTime)