From 1e1fbe300ba2b22246c6743147087d10cf6c9798 Mon Sep 17 00:00:00 2001
From: mrDarker <mr.darker@163.com>
Date: 星期二, 15 七月 2025 17:25:05 +0800
Subject: [PATCH] 修复:InterfaceManager.cpp保存图片添加锁

---
 EdgeInspector_App/InterfaceManager.h |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/EdgeInspector_App/InterfaceManager.h b/EdgeInspector_App/InterfaceManager.h
index 175d77f..85c8bab 100644
--- a/EdgeInspector_App/InterfaceManager.h
+++ b/EdgeInspector_App/InterfaceManager.h
@@ -100,7 +100,7 @@
 	BOOL			IsScanNow();	
 	int				LoadFullImage(CString strPath,int iSide,int nStartY = 0, CGlass_Data *pGlassData = NULL, const bool bIsDebugImg = true);
 	BOOL			SaveFullImage(CString strPath,int iSide,CPoint ptStart,int nLineCnt);
-	BOOL			SaveFullImage2(CString strPath,LPBYTE lpOrigin,int nImgWidth,int nImgHeight,int iSide,int nStartY,int nQuality = 50);		
+	BOOL			SaveFullImageModern(CString strPath,LPBYTE lpOrigin,int nImgWidth,int nImgHeight,int iSide,int nStartY,int nQuality = 50);
 	LPBYTE			GetGrabBuffer(DimensionDir eDir,int iVline);
 	BOOL			SetLiveGrabCommand(DimensionDir eDir,BOOL bStop);	
 	void			WriteLogManager(TCHAR *str);
@@ -123,6 +123,11 @@
 
 	long long GetCurrentTimestamp();
 
+private:
+	CRITICAL_SECTION m_criticalSection;
+	inline void Lock() { ::InitializeCriticalSection(&m_criticalSection); }
+	inline void Unlock() { ::DeleteCriticalSection(&m_criticalSection); }
+
 #if USE_WEBSOCKET
 protected:
 	void CreateWebSocketClients(WebSocketClientPool** wsClients, CString cstrURI, int nThreadCount);

--
Gitblit v1.9.3