mirror of
				https://github.com/gnif/LookingGlass.git
				synced 2025-11-04 06:31:54 +00:00 
			
		
		
		
	[client] main: dont push an invalid value into the timings buffers
This commit is contained in:
		@@ -152,8 +152,13 @@ static int renderThread(void * unused)
 | 
			
		||||
    const uint64_t t      = nanotime();
 | 
			
		||||
    const uint64_t delta  = t - g_state.lastRenderTime;
 | 
			
		||||
    g_state.lastRenderTime = t;
 | 
			
		||||
    const float fdelta = (float)delta / 1000000.0f;
 | 
			
		||||
    ringbuffer_push(g_state.renderTimings, &fdelta);
 | 
			
		||||
 | 
			
		||||
    if (g_state.lastRenderTimeValid)
 | 
			
		||||
    {
 | 
			
		||||
      const float fdelta = (float)delta / 1000000.0f;
 | 
			
		||||
      ringbuffer_push(g_state.renderTimings, &fdelta);
 | 
			
		||||
    }
 | 
			
		||||
    g_state.lastRenderTimeValid = true;
 | 
			
		||||
 | 
			
		||||
    if (g_state.showFPS)
 | 
			
		||||
    {
 | 
			
		||||
@@ -601,8 +606,13 @@ int main_frameThread(void * unused)
 | 
			
		||||
    const uint64_t t      = nanotime();
 | 
			
		||||
    const uint64_t delta  = t - g_state.lastFrameTime;
 | 
			
		||||
    g_state.lastFrameTime = t;
 | 
			
		||||
    const float fdelta = (float)delta / 1000000.0f;
 | 
			
		||||
    ringbuffer_push(g_state.frameTimings, &fdelta);
 | 
			
		||||
 | 
			
		||||
    if (g_state.lastFrameTimeValid)
 | 
			
		||||
    {
 | 
			
		||||
      const float fdelta = (float)delta / 1000000.0f;
 | 
			
		||||
      ringbuffer_push(g_state.frameTimings, &fdelta);
 | 
			
		||||
    }
 | 
			
		||||
    g_state.lastFrameTimeValid = true;
 | 
			
		||||
 | 
			
		||||
    atomic_fetch_add_explicit(&g_state.frameCount, 1, memory_order_relaxed);
 | 
			
		||||
    lgSignalEvent(e_frame);
 | 
			
		||||
 
 | 
			
		||||
@@ -96,8 +96,10 @@ struct AppState
 | 
			
		||||
  bool                  formatValid;
 | 
			
		||||
  atomic_uint_least64_t frameTime;
 | 
			
		||||
  uint64_t              lastFrameTime;
 | 
			
		||||
  bool                  lastFrameTimeValid;
 | 
			
		||||
  uint64_t              renderTime;
 | 
			
		||||
  uint64_t              lastRenderTime;
 | 
			
		||||
  bool                  lastRenderTimeValid;
 | 
			
		||||
  atomic_uint_least64_t frameCount;
 | 
			
		||||
  uint64_t              renderCount;
 | 
			
		||||
  RingBuffer            renderTimings;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user