freerdp-3.12.0-2.fc43

List of Findings

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1]
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:352:14: warning[-Wanalyzer-use-after-free]: use after ‘ainput_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:399:24: enter_function: entry to ‘ainput_server_context_new’
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:403:12: branch_false: following ‘false’ branch (when ‘ainput’ is non-NULL)...
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:406:9: branch_false: ...to here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:415:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:416:17: branch_true: ...to here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:421:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:421:9: call_function: calling ‘ainput_server_context_free’ from ‘ainput_server_context_new’
#  350|   	WINPR_ASSERT(ainput);
#  351|   
#  352|-> 	if (!ainput->externalThread && ainput->thread)
#  353|   	{
#  354|   		(void)SetEvent(ainput->stopEvent);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def2]
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:417:16: warning[-Wanalyzer-malloc-leak]: leak of ‘ainput’
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:401:49: acquire_memory: allocated here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:403:12: branch_false: following ‘false’ branch (when ‘ainput’ is non-NULL)...
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:406:9: branch_false: ...to here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:415:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:417:16: branch_false: ...to here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:417:16: danger: ‘ainput’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  415|   	if (!ainput->buffer)
#  416|   		goto fail;
#  417|-> 	return &ainput->context;
#  418|   fail:
#  419|   	WINPR_PRAGMA_DIAG_PUSH

Error: GCC_ANALYZER_WARNING (CWE-401): [#def3]
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:435:1: warning[-Wanalyzer-malloc-leak]: leak of ‘ainput’
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:399:24: enter_function: entry to ‘ainput_server_context_new’
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:401:49: acquire_memory: allocated here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:403:12: branch_false: following ‘false’ branch (when ‘ainput’ is non-NULL)...
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:406:9: branch_false: ...to here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:415:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:416:17: branch_true: ...to here
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:421:9: call_function: calling ‘ainput_server_context_free’ from ‘ainput_server_context_new’
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:421:9: return_function: returning to ‘ainput_server_context_new’ from ‘ainput_server_context_free’
FreeRDP-3.12.0/channels/ainput/server/ainput_main.c:435:1: danger: ‘ainput’ leaks here; was allocated at [(2)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/1)
#  433|   	}
#  434|   	free(ainput);
#  435|-> }
#  436|   
#  437|   static UINT ainput_process_message(ainput_server* ainput)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def4]
FreeRDP-3.12.0/channels/audin/server/audin.c:850:16: warning[-Wanalyzer-malloc-leak]: leak of ‘audin’
FreeRDP-3.12.0/channels/audin/server/audin.c:824:46: acquire_memory: allocated here
FreeRDP-3.12.0/channels/audin/server/audin.c:826:12: branch_false: following ‘false’ branch (when ‘audin’ is non-NULL)...
FreeRDP-3.12.0/channels/audin/server/audin.c:831:22: branch_false: ...to here
FreeRDP-3.12.0/channels/audin/server/audin.c:850:16: danger: ‘audin’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#  848|   	audin->context.OpenReply = audin_server_open_reply_default;
#  849|   
#  850|-> 	return &audin->context;
#  851|   }
#  852|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def5]
FreeRDP-3.12.0/channels/client/addin.c:249:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileUTF8(pszSearchPath, & FindData)’
FreeRDP-3.12.0/channels/client/addin.c:162:24: enter_function: entry to ‘freerdp_channels_list_dynamic_addins’
FreeRDP-3.12.0/channels/client/addin.c:186:12: branch_false: following ‘false’ branch (when ‘pszPattern’ is non-NULL)...
FreeRDP-3.12.0/channels/client/addin.c:192:13: branch_false: ...to here
FreeRDP-3.12.0/channels/client/addin.c:217:12: branch_false: following ‘false’ branch (when ‘pszSearchPath’ is non-NULL)...
FreeRDP-3.12.0/channels/client/addin.c:224:9: branch_false: ...to here
FreeRDP-3.12.0/channels/client/addin.c:230:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/client/addin.c:236:17: branch_false: ...to here
FreeRDP-3.12.0/channels/client/addin.c:236:17: call_function: calling ‘FindFirstFileUTF8’ from ‘freerdp_channels_list_dynamic_addins’
FreeRDP-3.12.0/channels/client/addin.c:236:17: return_function: returning to ‘freerdp_channels_list_dynamic_addins’ from ‘FindFirstFileUTF8’
FreeRDP-3.12.0/channels/client/addin.c:242:12: branch_false: following ‘false’ branch (when ‘ppAddins’ is non-NULL)...
FreeRDP-3.12.0/channels/client/addin.c:249:12: branch_false: ...to here
FreeRDP-3.12.0/channels/client/addin.c:249:12: danger: ‘FindFirstFileUTF8(pszSearchPath, & FindData)’ leaks here; was allocated at [(14)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/13)
#  247|   	}
#  248|   
#  249|-> 	if (hFind == INVALID_HANDLE_VALUE)
#  250|   		return ppAddins;
#  251|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def6]
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:59:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:50:28: acquire_memory: this call could return NULL
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:53:12: branch_true: following ‘true’ branch...
 branch_true: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:55:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:57:57: branch_true: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:59:25: danger: ‘cur’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#   57|   			const CLIPRDR_FORMAT* format = &list->formats[x];
#   58|   			CLIPRDR_FORMAT* cur = &filtered.formats[x];
#   59|-> 			cur->formatId = format->formatId;
#   60|   			if (format->formatName)
#   61|   				cur->formatName = _strdup(format->formatName);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def7]
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:77:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:50:28: acquire_memory: this call could return NULL
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:53:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:65:18: branch_false: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:65:17: branch_true: following ‘true’ branch...
 branch_true: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:67:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:69:57: branch_true: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:72:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:74:29: branch_false: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:77:33: danger: ‘cur’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#   75|   			    strcmp(format->formatName, type_FileContents) == 0)
#   76|   			{
#   77|-> 				cur->formatId = format->formatId;
#   78|   				cur->formatName = _strdup(format->formatName);
#   79|   				wpos++;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def8]
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:94:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘cur’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:50:28: acquire_memory: this call could return NULL
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:53:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:65:18: branch_false: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:65:17: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:83:18: branch_false: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:83:17: branch_true: following ‘true’ branch...
 branch_true: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:85:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:87:57: branch_true: ...to here
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_format.c:94:33: danger: ‘cur’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#   92|   			     strcmp(format->formatName, type_FileContents) != 0))
#   93|   			{
#   94|-> 				cur->formatId = format->formatId;
#   95|   				if (format->formatName)
#   96|   					cur->formatName = _strdup(format->formatName);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def9]
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:260:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cliprdr’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:250:13: enter_function: entry to ‘cliprdr_process_monitor_ready’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:254:41: call_function: calling ‘cliprdr_get_client_interface’ from ‘cliprdr_process_monitor_ready’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:254:41: return_function: returning to ‘cliprdr_process_monitor_ready’ from ‘cliprdr_get_client_interface’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:260:9: danger: dereference of NULL ‘cliprdr’
#  258|   	WINPR_ASSERT(s);
#  259|   
#  260|-> 	WLog_Print(cliprdr->log, WLOG_DEBUG, "MonitorReady");
#  261|   
#  262|   	if (!cliprdr->capabilitiesReceived)

Error: GCC_ANALYZER_WARNING (CWE-476): [#def10]
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:302:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cliprdr’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:292:13: enter_function: entry to ‘cliprdr_process_filecontents_request’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:296:41: call_function: calling ‘cliprdr_get_client_interface’ from ‘cliprdr_process_filecontents_request’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:296:41: return_function: returning to ‘cliprdr_process_filecontents_request’ from ‘cliprdr_get_client_interface’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:302:9: danger: dereference of NULL ‘cliprdr’
#  300|   	WINPR_ASSERT(s);
#  301|   
#  302|-> 	WLog_Print(cliprdr->log, WLOG_DEBUG, "FileContentsRequest");
#  303|   
#  304|   	request.common.msgType = CB_FILECONTENTS_REQUEST;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def11]
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:341:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cliprdr’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:331:13: enter_function: entry to ‘cliprdr_process_filecontents_response’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:335:41: call_function: calling ‘cliprdr_get_client_interface’ from ‘cliprdr_process_filecontents_response’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:335:41: return_function: returning to ‘cliprdr_process_filecontents_response’ from ‘cliprdr_get_client_interface’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:341:9: danger: dereference of NULL ‘cliprdr’
#  339|   	WINPR_ASSERT(s);
#  340|   
#  341|-> 	WLog_Print(cliprdr->log, WLOG_DEBUG, "FileContentsResponse");
#  342|   
#  343|   	response.common.msgType = CB_FILECONTENTS_RESPONSE;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def12]
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:373:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cliprdr’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:363:13: enter_function: entry to ‘cliprdr_process_lock_clipdata’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:367:41: call_function: calling ‘cliprdr_get_client_interface’ from ‘cliprdr_process_lock_clipdata’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:367:41: return_function: returning to ‘cliprdr_process_lock_clipdata’ from ‘cliprdr_get_client_interface’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:373:9: danger: dereference of NULL ‘cliprdr’
#  371|   	WINPR_ASSERT(s);
#  372|   
#  373|-> 	WLog_Print(cliprdr->log, WLOG_DEBUG, "LockClipData");
#  374|   
#  375|   	if (!Stream_CheckAndLogRequiredLength(TAG, s, 4))

Error: GCC_ANALYZER_WARNING (CWE-476): [#def13]
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:405:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cliprdr’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:395:13: enter_function: entry to ‘cliprdr_process_unlock_clipdata’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:399:41: call_function: calling ‘cliprdr_get_client_interface’ from ‘cliprdr_process_unlock_clipdata’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:399:41: return_function: returning to ‘cliprdr_process_unlock_clipdata’ from ‘cliprdr_get_client_interface’
FreeRDP-3.12.0/channels/cliprdr/client/cliprdr_main.c:405:9: danger: dereference of NULL ‘cliprdr’
#  403|   	WINPR_ASSERT(s);
#  404|   
#  405|-> 	WLog_Print(cliprdr->log, WLOG_DEBUG, "UnlockClipData");
#  406|   
#  407|   	if ((error = cliprdr_read_unlock_clipdata(s, &unlockClipboardData)))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def14]
FreeRDP-3.12.0/channels/cliprdr/server/cliprdr_main.c:1385:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(0, 1, 0, 0)’
FreeRDP-3.12.0/channels/cliprdr/server/cliprdr_main.c:1385:36: acquire_memory: allocated here
FreeRDP-3.12.0/channels/cliprdr/server/cliprdr_main.c:1385:12: danger: ‘CreateEventA(0, 1, 0, 0)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
# 1383|   	}
# 1384|   
# 1385|-> 	if (!(cliprdr->StopEvent = CreateEvent(NULL, TRUE, FALSE, NULL)))
# 1386|   	{
# 1387|   		WLog_ERR(TAG, "CreateEvent failed!");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def15]
FreeRDP-3.12.0/channels/cliprdr/server/cliprdr_main.c:1391:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &cliprdr_server_thread,  context, 0, 0)’
FreeRDP-3.12.0/channels/cliprdr/server/cliprdr_main.c:1385:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/cliprdr/server/cliprdr_main.c:1391:33: branch_false: ...to here
FreeRDP-3.12.0/channels/cliprdr/server/cliprdr_main.c:1391:33: acquire_memory: allocated here
FreeRDP-3.12.0/channels/cliprdr/server/cliprdr_main.c:1391:12: danger: ‘CreateThread(0, 0, &cliprdr_server_thread,  context, 0, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
# 1389|   	}
# 1390|   
# 1391|-> 	if (!(cliprdr->Thread = CreateThread(NULL, 0, cliprdr_server_thread, (void*)context, 0, NULL)))
# 1392|   	{
# 1393|   		WLog_ERR(TAG, "CreateThread failed!");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def16]
FreeRDP-3.12.0/channels/disp/server/disp_main.c:621:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/channels/disp/server/disp_main.c:590:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/disp/server/disp_main.c:596:52: branch_false: ...to here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:596:52: acquire_memory: allocated here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:598:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/disp/server/disp_main.c:604:30: branch_false: ...to here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:606:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/disp/server/disp_main.c:608:17: branch_true: ...to here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:621:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#  619|   	WINPR_PRAGMA_DIAG_PUSH
#  620|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  621|-> 	disp_server_context_free(context);
#  622|   	WINPR_PRAGMA_DIAG_POP
#  623|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def17]
FreeRDP-3.12.0/channels/disp/server/disp_main.c:621:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘disp_server_context_free’
FreeRDP-3.12.0/channels/disp/server/disp_main.c:588:39: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/channels/disp/server/disp_main.c:590:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/disp/server/disp_main.c:596:52: branch_false: ...to here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:598:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/disp/server/disp_main.c:600:17: branch_true: ...to here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:621:9: danger: deallocated with ‘disp_server_context_free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  619|   	WINPR_PRAGMA_DIAG_PUSH
#  620|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  621|-> 	disp_server_context_free(context);
#  622|   	WINPR_PRAGMA_DIAG_POP
#  623|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def18]
FreeRDP-3.12.0/channels/disp/server/disp_main.c:631:13: warning[-Wanalyzer-use-after-free]: use after ‘disp_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/disp/server/disp_main.c:584:20: enter_function: entry to ‘disp_server_context_new’
FreeRDP-3.12.0/channels/disp/server/disp_main.c:588:39: acquire_memory: allocated here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:590:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/disp/server/disp_main.c:596:52: branch_false: ...to here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:598:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/disp/server/disp_main.c:600:17: branch_true: ...to here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:621:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/disp/server/disp_main.c:621:9: call_function: calling ‘disp_server_context_free’ from ‘disp_server_context_new’
#  629|   		return;
#  630|   
#  631|-> 	if (context->priv)
#  632|   	{
#  633|   		disp_server_close(context);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def19]
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:342:16: warning[-Wanalyzer-malloc-leak]: leak of ‘dvcman’
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1640:13: enter_function: entry to ‘drdynvc_virtual_channel_event_initialized’
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1647:12: branch_false: following ‘false’ branch (when ‘drdynvc’ is non-NULL)...
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1650:26: branch_false: ...to here
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1652:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1658:15: branch_false: ...to here
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1660:32: call_function: calling ‘dvcman_new’ from ‘drdynvc_virtual_channel_event_initialized’
#  340|   	obj = ArrayList_Object(dvcman->plugins);
#  341|   	obj->fnObjectFree = dvcman_plugin_terminate;
#  342|-> 	return &dvcman->iface;
#  343|   fail:
#  344|   	dvcman_free(plugin, &dvcman->iface);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def20]
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:577:1: warning[-Wanalyzer-malloc-leak]: leak of ‘dvcman’
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1640:13: enter_function: entry to ‘drdynvc_virtual_channel_event_initialized’
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1647:12: branch_false: following ‘false’ branch (when ‘drdynvc’ is non-NULL)...
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1650:26: branch_false: ...to here
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1652:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1658:15: branch_false: ...to here
FreeRDP-3.12.0/channels/drdynvc/client/drdynvc_main.c:1660:32: call_function: calling ‘dvcman_new’ from ‘drdynvc_virtual_channel_event_initialized’
#  575|   	StreamPool_Free(dvcman->pool);
#  576|   	free(dvcman);
#  577|-> }
#  578|   
#  579|   /**

Error: GCC_ANALYZER_WARNING (CWE-401): [#def21]
FreeRDP-3.12.0/channels/drdynvc/server/drdynvc_main.c:125:14: warning[-Wanalyzer-malloc-leak]: leak of ‘**context.priv.ChannelHandle’
FreeRDP-3.12.0/channels/drdynvc/server/drdynvc_main.c:123:13: acquire_memory: allocated here
FreeRDP-3.12.0/channels/drdynvc/server/drdynvc_main.c:125:14: danger: ‘**context.priv.ChannelHandle’ leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#  123|   	    WTSVirtualChannelOpen(context->vcm, WTS_CURRENT_SESSION, DRDYNVC_SVC_CHANNEL_NAME);
#  124|   
#  125|-> 	if (!context->priv->ChannelHandle)
#  126|   	{
#  127|   		WLog_ERR(TAG, "WTSVirtualChannelOpen failed!");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def22]
FreeRDP-3.12.0/channels/drive/client/drive_file.c:392:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:318:13: enter_function: entry to ‘drive_file_new’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:322:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/drive/client/drive_file.c:327:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/channels/drive/client/drive_file.c:333:9: branch_false: ...to here
FreeRDP-3.12.0/channels/drive/client/drive_file.c:343:20: call_function: calling ‘drive_file_combine_fullpath’ from ‘drive_file_new’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:343:20: return_function: returning to ‘drive_file_new’ from ‘drive_file_combine_fullpath’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:344:15: call_function: calling ‘drive_file_set_fullpath’ from ‘drive_file_new’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:344:15: return_function: returning to ‘drive_file_new’ from ‘drive_file_set_fullpath’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:347:14: call_function: calling ‘drive_file_init’ from ‘drive_file_new’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:347:14: return_function: returning to ‘drive_file_new’ from ‘drive_file_init’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:347:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/drive/client/drive_file.c:349:35: branch_true: ...to here
FreeRDP-3.12.0/channels/drive/client/drive_file.c:350:17: call_function: calling ‘drive_file_free’ from ‘drive_file_new’
#  390|   	DEBUG_WSTR("Free %s", file->fullpath);
#  391|   	free(file->fullpath);
#  392|-> 	free(file);
#  393|   	return rc;
#  394|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def23]
FreeRDP-3.12.0/channels/drive/client/drive_file.c:588:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileW(*file.fullpath, 0, 4, 0, 3, 128, 0)’
FreeRDP-3.12.0/channels/drive/client/drive_file.c:583:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/drive/client/drive_file.c:586:29: branch_false: ...to here
FreeRDP-3.12.0/channels/drive/client/drive_file.c:586:17: acquire_memory: allocated here
FreeRDP-3.12.0/channels/drive/client/drive_file.c:588:12: danger: ‘CreateFileW(*file.fullpath, 0, 4, 0, 3, 128, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#  586|   	hFile = CreateFileW(file->fullpath, 0, FILE_SHARE_DELETE, NULL, OPEN_EXISTING,
#  587|   	                    FILE_ATTRIBUTE_NORMAL, NULL);
#  588|-> 	if (hFile != INVALID_HANDLE_VALUE)
#  589|   	{
#  590|   		status = GetFileInformationByHandle(hFile, &fileInformation);

Error: COMPILER_WARNING (CWE-563): [#def24]
FreeRDP-3.12.0/channels/drive/client/drive_main.c: scope_hint: In function ‘drive_process_irp_create’
FreeRDP-3.12.0/channels/drive/client/drive_main.c:162:16: warning[-Wunused-but-set-variable]: variable ‘allocationSize’ set but not used
#  162 |         UINT64 allocationSize = 0;
#      |                ^~~~~~~~~~~~~~
#  160|   	UINT32 CreateOptions = 0;
#  161|   	UINT32 PathLength = 0;
#  162|-> 	UINT64 allocationSize = 0;
#  163|   	const WCHAR* path = NULL;
#  164|   

Error: COMPILER_WARNING (CWE-563): [#def25]
FreeRDP-3.12.0/channels/drive/client/drive_main.c: scope_hint: In function ‘drive_process_irp_silent_ignore’
FreeRDP-3.12.0/channels/drive/client/drive_main.c:590:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used
#  590 |         UINT32 FsInformationClass = 0;
#      |                ^~~~~~~~~~~~~~~~~~
#  588|   static UINT drive_process_irp_silent_ignore(DRIVE_DEVICE* drive, IRP* irp)
#  589|   {
#  590|-> 	UINT32 FsInformationClass = 0;
#  591|   
#  592|   	if (!drive || !irp || !irp->output || !irp->Complete)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def26]
FreeRDP-3.12.0/channels/drive/client/drive_main.c:1079:20: warning[-Wanalyzer-malloc-leak]: leak of ‘GetKnownPath(1)’
FreeRDP-3.12.0/channels/drive/client/drive_main.c:1062:12: branch_false: following ‘false’ branch (when the strings are non-equal)...
FreeRDP-3.12.0/channels/drive/client/drive_main.c:1074:18: branch_false: ...to here
FreeRDP-3.12.0/channels/drive/client/drive_main.c:1074:17: branch_true: following ‘true’ branch (when the strings are equal)...
FreeRDP-3.12.0/channels/drive/client/drive_main.c:1076:17: branch_true: ...to here
FreeRDP-3.12.0/channels/drive/client/drive_main.c:1077:31: acquire_memory: allocated here
FreeRDP-3.12.0/channels/drive/client/drive_main.c:1079:20: danger: ‘GetKnownPath(1)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
# 1077|   		drive->Path = GetKnownPath(KNOWN_PATH_HOME);
# 1078|   
# 1079|-> 		if (!drive->Path)
# 1080|   		{
# 1081|   			WLog_ERR(TAG, "_strdup failed!");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def27]
FreeRDP-3.12.0/channels/encomsp/server/encomsp_main.c:306:14: warning[-Wanalyzer-malloc-leak]: leak of ‘**context.priv.ChannelHandle’
FreeRDP-3.12.0/channels/encomsp/server/encomsp_main.c:304:13: acquire_memory: allocated here
FreeRDP-3.12.0/channels/encomsp/server/encomsp_main.c:306:14: danger: ‘**context.priv.ChannelHandle’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#  304|   	    WTSVirtualChannelOpen(context->vcm, WTS_CURRENT_SESSION, ENCOMSP_SVC_CHANNEL_NAME);
#  305|   
#  306|-> 	if (!context->priv->ChannelHandle)
#  307|   		return CHANNEL_RC_BAD_CHANNEL;
#  308|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def28]
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:180:24: warning[-Wanalyzer-malloc-leak]: leak of ‘mappedGeometry’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:162:13: enter_function: entry to ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:179:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:182:9: call_function: inlined call to ‘stream_read_u32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:184:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:191:9: call_function: inlined call to ‘stream_read_u64_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:192:9: call_function: inlined call to ‘stream_read_u32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:197:12: branch_false: following ‘false’ branch (when ‘v != 2’)...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:215:17: branch_false: ...to here
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:215:17: branch_true: following ‘true’ branch (when ‘v == 1’)...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:219:20: branch_true: ...to here
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:219:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:222:25: branch_true: ...to here
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:223:42: acquire_memory: allocated here
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:224:28: branch_false: following ‘false’ branch (when ‘mappedGeometry’ is non-NULL)...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:227:25: branch_false: ...to here
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:230:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:244:17: call_function: inlined call to ‘stream_read_u64_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:246:17: call_function: inlined call to ‘stream_read_i32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:247:17: call_function: inlined call to ‘stream_read_i32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:248:17: call_function: inlined call to ‘stream_read_i32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:249:17: call_function: inlined call to ‘stream_read_i32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:251:17: call_function: inlined call to ‘stream_read_i32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:252:17: call_function: inlined call to ‘stream_read_i32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:253:17: call_function: inlined call to ‘stream_read_i32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:254:17: call_function: inlined call to ‘stream_read_i32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:256:17: call_function: inlined call to ‘stream_read_u32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:261:17: call_function: inlined call to ‘stream_read_u32_le’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:262:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:268:20: branch_false: ...to here
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:268:20: branch_false: following ‘false’ branch (when ‘v == 0’)...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:276:25: call_function: inlined call to ‘freerdp_rgndata_reset’ from ‘geometry_recv_pdu’
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:279:20: branch_true: following ‘true’ branch (when ‘newOne != 0’)...
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:281:29: branch_true: ...to here
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:281:28: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/channels/geometry/client/geometry_main.c:180:24: danger: ‘mappedGeometry’ leaks here; was allocated at [(28)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/27)
#  178|   
#  179|   	if (!Stream_CheckAndLogRequiredLength(TAG, s, 4))
#  180|-> 		return ERROR_INVALID_DATA;
#  181|   
#  182|   	Stream_Read_UINT32(s, length); /* Length (4 bytes) */

Error: CPPCHECK_WARNING (CWE-664): [#def29]
FreeRDP-3.12.0/channels/location/client/location_main.c:347: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  345|   
#  346|   	UINT32 res = ERROR_INTERNAL_ERROR;
#  347|-> 	va_list ap = { 0 };
#  348|   	va_start(ap, count);
#  349|   	switch (type)

Error: GCC_ANALYZER_WARNING (CWE-416): [#def30]
FreeRDP-3.12.0/channels/location/server/location_main.c:480:14: warning[-Wanalyzer-use-after-free]: use after ‘location_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/location/server/location_main.c:600:24: enter_function: entry to ‘location_server_context_new’
FreeRDP-3.12.0/channels/location/server/location_main.c:604:12: branch_false: following ‘false’ branch (when ‘location’ is non-NULL)...
FreeRDP-3.12.0/channels/location/server/location_main.c:607:9: branch_false: ...to here
FreeRDP-3.12.0/channels/location/server/location_main.c:617:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/location/server/location_main.c:618:17: branch_true: ...to here
FreeRDP-3.12.0/channels/location/server/location_main.c:624:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/location/server/location_main.c:624:9: call_function: calling ‘location_server_context_free’ from ‘location_server_context_new’
#  478|   	WINPR_ASSERT(location);
#  479|   
#  480|-> 	if (!location->externalThread && location->thread)
#  481|   	{
#  482|   		(void)SetEvent(location->stopEvent);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def31]
FreeRDP-3.12.0/channels/location/server/location_main.c:620:16: warning[-Wanalyzer-malloc-leak]: leak of ‘location’
FreeRDP-3.12.0/channels/location/server/location_main.c:602:55: acquire_memory: allocated here
FreeRDP-3.12.0/channels/location/server/location_main.c:604:12: branch_false: following ‘false’ branch (when ‘location’ is non-NULL)...
FreeRDP-3.12.0/channels/location/server/location_main.c:607:9: branch_false: ...to here
FreeRDP-3.12.0/channels/location/server/location_main.c:617:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/location/server/location_main.c:620:16: branch_false: ...to here
FreeRDP-3.12.0/channels/location/server/location_main.c:620:16: danger: ‘location’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  618|   		goto fail;
#  619|   
#  620|-> 	return &location->context;
#  621|   fail:
#  622|   	WINPR_PRAGMA_DIAG_PUSH

Error: GCC_ANALYZER_WARNING (CWE-401): [#def32]
FreeRDP-3.12.0/channels/location/server/location_main.c:640:1: warning[-Wanalyzer-malloc-leak]: leak of ‘location’
FreeRDP-3.12.0/channels/location/server/location_main.c:600:24: enter_function: entry to ‘location_server_context_new’
FreeRDP-3.12.0/channels/location/server/location_main.c:602:55: acquire_memory: allocated here
FreeRDP-3.12.0/channels/location/server/location_main.c:604:12: branch_false: following ‘false’ branch (when ‘location’ is non-NULL)...
FreeRDP-3.12.0/channels/location/server/location_main.c:607:9: branch_false: ...to here
FreeRDP-3.12.0/channels/location/server/location_main.c:617:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/location/server/location_main.c:618:17: branch_true: ...to here
FreeRDP-3.12.0/channels/location/server/location_main.c:624:9: call_function: calling ‘location_server_context_free’ from ‘location_server_context_new’
FreeRDP-3.12.0/channels/location/server/location_main.c:624:9: return_function: returning to ‘location_server_context_new’ from ‘location_server_context_free’
FreeRDP-3.12.0/channels/location/server/location_main.c:640:1: danger: ‘location’ leaks here; was allocated at [(2)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/1)
#  638|   
#  639|   	free(location);
#  640|-> }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def33]
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:272:1: warning[-Wanalyzer-malloc-leak]: leak of ‘cups_printer’
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:290:20: enter_function: entry to ‘printer_cups_new_printer’
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:295:41: acquire_memory: allocated here
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:296:12: branch_false: following ‘false’ branch (when ‘cups_printer’ is non-NULL)...
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:299:41: branch_false: ...to here
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:303:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:304:17: branch_true: ...to here
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:336:9: call_function: calling ‘printer_cups_free_printer’ from ‘printer_cups_new_printer’
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:336:9: return_function: returning to ‘printer_cups_new_printer’ from ‘printer_cups_free_printer’
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:272:1: danger: ‘cups_printer’ leaks here; was allocated at [(2)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/1)
#  270|   	free(printer->driver);
#  271|   	free(printer);
#  272|-> }
#  273|   
#  274|   static void printer_cups_add_ref_printer(rdpPrinter* printer)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def34]
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:331:9: warning[-Wanalyzer-malloc-leak]: leak of ‘cups_printer’
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:290:20: enter_function: entry to ‘printer_cups_new_printer’
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:295:41: acquire_memory: allocated here
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:296:12: branch_false: following ‘false’ branch (when ‘cups_printer’ is non-NULL)...
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:299:41: branch_false: ...to here
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:303:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:306:12: branch_false: ...to here
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:306:12: branch_true: following ‘true’ branch (when ‘driverName’ is non-NULL)...
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:307:48: branch_true: ...to here
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:317:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:320:9: branch_false: ...to here
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:328:9: call_function: calling ‘printer_cups_add_ref_printer’ from ‘printer_cups_new_printer’
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:328:9: return_function: returning to ‘printer_cups_new_printer’ from ‘printer_cups_add_ref_printer’
FreeRDP-3.12.0/channels/printer/client/cups/printer_cups.c:331:9: danger: ‘cups_printer’ leaks here; was allocated at [(2)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/1)
#  329|   
#  330|   	WINPR_ASSERT(cups_printer->printer.backend->AddRef);
#  331|-> 	cups_printer->printer.backend->AddRef(cups_printer->printer.backend);
#  332|   
#  333|   	return &cups_printer->printer;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def35]
FreeRDP-3.12.0/channels/printer/client/printer_main.c:119:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileA(GetCombinedPath(path,  name), 1073741824, 0, 0, 2, 128, 0)’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:716:13: enter_function: entry to ‘printer_custom_component’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:727:12: branch_false: following ‘false’ branch (when ‘component == 20562’)...
FreeRDP-3.12.0/channels/printer/client/printer_main.c:730:14: branch_false: ...to here
FreeRDP-3.12.0/channels/printer/client/printer_main.c:730:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/printer/client/printer_main.c:733:9: call_function: inlined call to ‘stream_read_u32_le’ from ‘printer_custom_component’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:800:44: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/printer/client/printer_main.c:803:41: call_function: inlined call to ‘stream_read_u32_le’ from ‘printer_custom_component’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:804:41: call_function: inlined call to ‘stream_read_u32_le’ from ‘printer_custom_component’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:806:44: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/printer/client/printer_main.c:809:55: call_function: inlined call to ‘Stream_ConstPointer’ from ‘printer_custom_component’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:812:44: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/printer/client/printer_main.c:815:54: call_function: inlined call to ‘Stream_ConstPointer’ from ‘printer_custom_component’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:818:46: call_function: calling ‘printer_update_to_config’ from ‘printer_custom_component’
#  117|   	free(abs);
#  118|   
#  119|-> 	if (file == INVALID_HANDLE_VALUE)
#  120|   		return FALSE;
#  121|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def36]
FreeRDP-3.12.0/channels/printer/client/printer_main.c:174:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileA(GetCombinedPath(path,  name), 2147483648, 0, 0, 3, 128, 0)’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:962:13: enter_function: entry to ‘printer_register’
FreeRDP-3.12.0/channels/printer/client/printer_main.c:972:12: branch_false: following ‘false’ branch (when ‘printer_dev’ is non-NULL)...
FreeRDP-3.12.0/channels/printer/client/printer_main.c:978:36: branch_false: ...to here
FreeRDP-3.12.0/channels/printer/client/printer_main.c:980:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/printer/client/printer_main.c:983:15: branch_false: ...to here
FreeRDP-3.12.0/channels/printer/client/printer_main.c:996:14: call_function: calling ‘printer_load_from_config’ from ‘printer_register’
#  172|   	free(abs);
#  173|   
#  174|-> 	if (file == INVALID_HANDLE_VALUE)
#  175|   		return FALSE;
#  176|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def37]
FreeRDP-3.12.0/channels/rail/client/rail_main.c:587:28: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘rail’
FreeRDP-3.12.0/channels/rail/client/rail_main.c:571:13: enter_function: entry to ‘rail_virtual_channel_event_connected’
FreeRDP-3.12.0/channels/rail/client/rail_main.c:574:38: call_function: calling ‘rail_get_client_interface’ from ‘rail_virtual_channel_event_connected’
FreeRDP-3.12.0/channels/rail/client/rail_main.c:574:38: return_function: returning to ‘rail_virtual_channel_event_connected’ from ‘rail_get_client_interface’
FreeRDP-3.12.0/channels/rail/client/rail_main.c:579:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rail/client/rail_main.c:587:28: branch_false: ...to here
FreeRDP-3.12.0/channels/rail/client/rail_main.c:587:28: danger: dereference of NULL ‘rail’
#  585|   			         WTSErrorToString(status), status);
#  586|   	}
#  587|-> 	rail->MsgsHandle = channel_client_create_handler(rail->rdpcontext, rail, rail_order_recv,
#  588|   	                                                 RAIL_SVC_CHANNEL_NAME);
#  589|   	if (!rail->MsgsHandle)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def38]
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1446:14: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(0, 1, 0, 0)’
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1421:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1427:14: branch_false: ...to here
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1427:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1429:13: branch_false: ...to here
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1427:13: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1442:31: branch_false: ...to here
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1444:36: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rail/server/rail_main.c:1446:14: danger: ‘CreateEventA(0, 1, 0, 0)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6)
# 1444|   	context->priv->stopEvent = CreateEvent(NULL, TRUE, FALSE, NULL);
# 1445|   
# 1446|-> 	if (!context->priv->stopEvent)
# 1447|   	{
# 1448|   		WLog_ERR(TAG, "CreateEvent failed!");

Error: COMPILER_WARNING (CWE-563): [#def39]
FreeRDP-3.12.0/channels/rdpdr/client/rdpdr_main.c: scope_hint: In function ‘dummy_irp_response’
FreeRDP-3.12.0/channels/rdpdr/client/rdpdr_main.c:1500:16: warning[-Wunused-but-set-variable]: variable ‘FileId’ set but not used
# 1500 |         UINT32 FileId = 0;
#      |                ^~~~~~
# 1498|   	wStream* output = NULL;
# 1499|   	UINT32 DeviceId = 0;
# 1500|-> 	UINT32 FileId = 0;
# 1501|   	UINT32 CompletionId = 0;
# 1502|   

Error: CPPCHECK_WARNING (CWE-664): [#def40]
FreeRDP-3.12.0/channels/rdpdr/client/rdpdr_main.c:1655: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1653|                                 size_t count, ...)
# 1654|   {
# 1655|-> 	va_list ap = { 0 };
# 1656|   	WINPR_ASSERT(rdpdr);
# 1657|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def41]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:239:16: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3201:13: enter_function: entry to ‘rdpdr_server_drive_close_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3204:26: call_function: inlined call to ‘rdpdr_server_irp_new’ from ‘rdpdr_server_drive_close_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3209:12: branch_false: following ‘false’ branch (when ‘irp’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3215:29: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3221:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3230:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3230:16: call_function: calling ‘rdpdr_server_send_device_close_request’ from ‘rdpdr_server_drive_close_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3230:16: return_function: returning to ‘rdpdr_server_drive_close_file’ from ‘rdpdr_server_send_device_close_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:239:16: danger: ‘irp’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#  237|   	                                (ULONG)length, &written);
#  238|   	Stream_Free(s, TRUE);
#  239|-> 	return status ? CHANNEL_RC_OK : ERROR_INTERNAL_ERROR;
#  240|   }
#  241|   

Error: COMPILER_WARNING (CWE-563): [#def42]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:436:16: warning[-Wunused-but-set-variable]: variable ‘ioCode1’ set but not used
#  436 |         UINT32 ioCode1 = 0;
#      |                ^~~~~~~
#  434|                                                        const RDPDR_CAPABILITY_HEADER* header)
#  435|   {
#  436|-> 	UINT32 ioCode1 = 0;
#  437|   	UINT32 extraFlags1 = 0;
#  438|   	UINT32 extendedPdu = 0;

Error: COMPILER_WARNING (CWE-563): [#def43]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:437:16: warning[-Wunused-but-set-variable]: variable ‘extraFlags1’ set but not used
#  437 |         UINT32 extraFlags1 = 0;
#      |                ^~~~~~~~~~~
#  435|   {
#  436|   	UINT32 ioCode1 = 0;
#  437|-> 	UINT32 extraFlags1 = 0;
#  438|   	UINT32 extendedPdu = 0;
#  439|   	UINT16 VersionMajor = 0;

Error: COMPILER_WARNING (CWE-563): [#def44]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_read_general_capability_set’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:441:16: warning[-Wunused-but-set-variable]: variable ‘SpecialTypeDeviceCap’ set but not used
#  441 |         UINT32 SpecialTypeDeviceCap = 0;
#      |                ^~~~~~~~~~~~~~~~~~~~
#  439|   	UINT16 VersionMajor = 0;
#  440|   	UINT16 VersionMinor = 0;
#  441|-> 	UINT32 SpecialTypeDeviceCap = 0;
#  442|   	WINPR_ASSERT(context);
#  443|   	WINPR_ASSERT(context->priv);

Error: COMPILER_WARNING (CWE-563): [#def45]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1173:16: warning[-Wunused-but-set-variable]: variable ‘DesiredAccess’ set but not used
# 1173 |         UINT32 DesiredAccess = 0;
#      |                ^~~~~~~~~~~~~
# 1171|   {
# 1172|   	const WCHAR* path = NULL;
# 1173|-> 	UINT32 DesiredAccess = 0;
# 1174|   	UINT32 AllocationSize = 0;
# 1175|   	UINT32 FileAttributes = 0;

Error: COMPILER_WARNING (CWE-563): [#def46]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1174:16: warning[-Wunused-but-set-variable]: variable ‘AllocationSize’ set but not used
# 1174 |         UINT32 AllocationSize = 0;
#      |                ^~~~~~~~~~~~~~
# 1172|   	const WCHAR* path = NULL;
# 1173|   	UINT32 DesiredAccess = 0;
# 1174|-> 	UINT32 AllocationSize = 0;
# 1175|   	UINT32 FileAttributes = 0;
# 1176|   	UINT32 SharedAccess = 0;

Error: COMPILER_WARNING (CWE-563): [#def47]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1175:16: warning[-Wunused-but-set-variable]: variable ‘FileAttributes’ set but not used
# 1175 |         UINT32 FileAttributes = 0;
#      |                ^~~~~~~~~~~~~~
# 1173|   	UINT32 DesiredAccess = 0;
# 1174|   	UINT32 AllocationSize = 0;
# 1175|-> 	UINT32 FileAttributes = 0;
# 1176|   	UINT32 SharedAccess = 0;
# 1177|   	UINT32 CreateDisposition = 0;

Error: COMPILER_WARNING (CWE-563): [#def48]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1176:16: warning[-Wunused-but-set-variable]: variable ‘SharedAccess’ set but not used
# 1176 |         UINT32 SharedAccess = 0;
#      |                ^~~~~~~~~~~~
# 1174|   	UINT32 AllocationSize = 0;
# 1175|   	UINT32 FileAttributes = 0;
# 1176|-> 	UINT32 SharedAccess = 0;
# 1177|   	UINT32 CreateDisposition = 0;
# 1178|   	UINT32 CreateOptions = 0;

Error: COMPILER_WARNING (CWE-563): [#def49]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1177:16: warning[-Wunused-but-set-variable]: variable ‘CreateDisposition’ set but not used
# 1177 |         UINT32 CreateDisposition = 0;
#      |                ^~~~~~~~~~~~~~~~~
# 1175|   	UINT32 FileAttributes = 0;
# 1176|   	UINT32 SharedAccess = 0;
# 1177|-> 	UINT32 CreateDisposition = 0;
# 1178|   	UINT32 CreateOptions = 0;
# 1179|   	UINT32 PathLength = 0;

Error: COMPILER_WARNING (CWE-563): [#def50]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_create_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1178:16: warning[-Wunused-but-set-variable]: variable ‘CreateOptions’ set but not used
# 1178 |         UINT32 CreateOptions = 0;
#      |                ^~~~~~~~~~~~~
# 1176|   	UINT32 SharedAccess = 0;
# 1177|   	UINT32 CreateDisposition = 0;
# 1178|-> 	UINT32 CreateOptions = 0;
# 1179|   	UINT32 PathLength = 0;
# 1180|   

Error: COMPILER_WARNING (CWE-563): [#def51]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1229:16: warning[-Wunused-but-set-variable]: variable ‘Length’ set but not used
# 1229 |         UINT32 Length = 0;
#      |                ^~~~~~
# 1227|                                                    WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1228|   {
# 1229|-> 	UINT32 Length = 0;
# 1230|   	UINT64 Offset = 0;
# 1231|   

Error: COMPILER_WARNING (CWE-563): [#def52]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_read_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1230:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used
# 1230 |         UINT64 Offset = 0;
#      |                ^~~~~~
# 1228|   {
# 1229|   	UINT32 Length = 0;
# 1230|-> 	UINT64 Offset = 0;
# 1231|   
# 1232|   	WINPR_ASSERT(context);

Error: COMPILER_WARNING (CWE-563): [#def53]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_write_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1254:16: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used
# 1254 |         UINT64 Offset = 0;
#      |                ^~~~~~
# 1252|   {
# 1253|   	UINT32 Length = 0;
# 1254|-> 	UINT64 Offset = 0;
# 1255|   
# 1256|   	WINPR_ASSERT(context);

Error: COMPILER_WARNING (CWE-563): [#def54]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1283:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferLength’ set but not used
# 1283 |         UINT32 OutputBufferLength = 0;
#      |                ^~~~~~~~~~~~~~~~~~
# 1281|                                                              WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1282|   {
# 1283|-> 	UINT32 OutputBufferLength = 0;
# 1284|   	UINT32 InputBufferLength = 0;
# 1285|   	UINT32 IoControlCode = 0;

Error: COMPILER_WARNING (CWE-563): [#def55]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_device_control_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1285:16: warning[-Wunused-but-set-variable]: variable ‘IoControlCode’ set but not used
# 1285 |         UINT32 IoControlCode = 0;
#      |                ^~~~~~~~~~~~~
# 1283|   	UINT32 OutputBufferLength = 0;
# 1284|   	UINT32 InputBufferLength = 0;
# 1285|-> 	UINT32 IoControlCode = 0;
# 1286|   
# 1287|   	WINPR_ASSERT(context);

Error: COMPILER_WARNING (CWE-563): [#def56]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_volume_information_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1314:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used
# 1314 |         UINT32 FsInformationClass = 0;
#      |                ^~~~~~~~~~~~~~~~~~
# 1312|       WINPR_ATTR_UNUSED UINT32 FileId, WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1313|   {
# 1314|-> 	UINT32 FsInformationClass = 0;
# 1315|   	UINT32 Length = 0;
# 1316|   

Error: COMPILER_WARNING (CWE-1164): [#def57]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: At top level
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1338:13: warning[-Wunused-function]: ‘rdpdr_server_receive_io_set_volume_information_request’ defined but not used
# 1338 | static UINT rdpdr_server_receive_io_set_volume_information_request(
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1336|   }
# 1337|   
# 1338|-> static UINT rdpdr_server_receive_io_set_volume_information_request(
# 1339|       RdpdrServerContext* context, wStream* s, WINPR_ATTR_UNUSED UINT32 DeviceId,
# 1340|       WINPR_ATTR_UNUSED UINT32 FileId, WINPR_ATTR_UNUSED UINT32 CompletionId)

Error: COMPILER_WARNING (CWE-563): [#def58]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_set_volume_information_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1342:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used
# 1342 |         UINT32 FsInformationClass = 0;
#      |                ^~~~~~~~~~~~~~~~~~
# 1340|       WINPR_ATTR_UNUSED UINT32 FileId, WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1341|   {
# 1342|-> 	UINT32 FsInformationClass = 0;
# 1343|   	UINT32 Length = 0;
# 1344|   

Error: COMPILER_WARNING (CWE-563): [#def59]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_information_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1374:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used
# 1374 |         UINT32 FsInformationClass = 0;
#      |                ^~~~~~~~~~~~~~~~~~
# 1372|                                                                 WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1373|   {
# 1374|-> 	UINT32 FsInformationClass = 0;
# 1375|   	UINT32 Length = 0;
# 1376|   

Error: COMPILER_WARNING (CWE-563): [#def60]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_set_information_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1405:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used
# 1405 |         UINT32 FsInformationClass = 0;
#      |                ^~~~~~~~~~~~~~~~~~
# 1403|                                                               WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1404|   {
# 1405|-> 	UINT32 FsInformationClass = 0;
# 1406|   	UINT32 Length = 0;
# 1407|   

Error: COMPILER_WARNING (CWE-563): [#def61]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1436:14: warning[-Wunused-but-set-variable]: variable ‘InitialQuery’ set but not used
# 1436 |         BYTE InitialQuery = 0;
#      |              ^~~~~~~~~~~~
# 1434|                                                               WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1435|   {
# 1436|-> 	BYTE InitialQuery = 0;
# 1437|   	UINT32 FsInformationClass = 0;
# 1438|   	UINT32 PathLength = 0;

Error: COMPILER_WARNING (CWE-563): [#def62]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_query_directory_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1437:16: warning[-Wunused-but-set-variable]: variable ‘FsInformationClass’ set but not used
# 1437 |         UINT32 FsInformationClass = 0;
#      |                ^~~~~~~~~~~~~~~~~~
# 1435|   {
# 1436|   	BYTE InitialQuery = 0;
# 1437|-> 	UINT32 FsInformationClass = 0;
# 1438|   	UINT32 PathLength = 0;
# 1439|   	const WCHAR* Path = NULL;

Error: COMPILER_WARNING (CWE-563): [#def63]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1470:14: warning[-Wunused-but-set-variable]: variable ‘WatchTree’ set but not used
# 1470 |         BYTE WatchTree = 0;
#      |              ^~~~~~~~~
# 1468|                                                                WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1469|   {
# 1470|-> 	BYTE WatchTree = 0;
# 1471|   	UINT32 CompletionFilter = 0;
# 1472|   

Error: COMPILER_WARNING (CWE-563): [#def64]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_change_directory_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1471:16: warning[-Wunused-but-set-variable]: variable ‘CompletionFilter’ set but not used
# 1471 |         UINT32 CompletionFilter = 0;
#      |                ^~~~~~~~~~~~~~~~
# 1469|   {
# 1470|   	BYTE WatchTree = 0;
# 1471|-> 	UINT32 CompletionFilter = 0;
# 1472|   
# 1473|   	WINPR_ASSERT(context);

Error: COMPILER_WARNING (CWE-563): [#def65]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1521:16: warning[-Wunused-but-set-variable]: variable ‘Operation’ set but not used
# 1521 |         UINT32 Operation = 0;
#      |                ^~~~~~~~~
# 1519|                                                            WINPR_ATTR_UNUSED UINT32 CompletionId)
# 1520|   {
# 1521|-> 	UINT32 Operation = 0;
# 1522|   	UINT32 Lock = 0;
# 1523|   	UINT32 NumLocks = 0;

Error: COMPILER_WARNING (CWE-563): [#def66]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1540:24: warning[-Wunused-but-set-variable]: variable ‘Length’ set but not used
# 1540 |                 UINT64 Length = 0;
#      |                        ^~~~~~
# 1538|   	for (UINT32 x = 0; x < NumLocks; x++)
# 1539|   	{
# 1540|-> 		UINT64 Length = 0;
# 1541|   		UINT64 Offset = 0;
# 1542|   

Error: COMPILER_WARNING (CWE-563): [#def67]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_receive_io_lock_control_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:1541:24: warning[-Wunused-but-set-variable]: variable ‘Offset’ set but not used
# 1541 |                 UINT64 Offset = 0;
#      |                        ^~~~~~
# 1539|   	{
# 1540|   		UINT64 Length = 0;
# 1541|-> 		UINT64 Offset = 0;
# 1542|   
# 1543|   		if (!Stream_CheckAndLogRequiredLengthWLog(context->priv->log, s, 16))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def68]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2148:14: warning[-Wanalyzer-malloc-leak]: leak of ‘**context.priv.ChannelHandle’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2146:13: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2148:14: danger: ‘**context.priv.ChannelHandle’ leaks here; was allocated at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0)
# 2146|   	    WTSVirtualChannelOpen(context->vcm, WTS_CURRENT_SESSION, RDPDR_SVC_CHANNEL_NAME);
# 2147|   
# 2148|-> 	if (!context->priv->ChannelHandle)
# 2149|   	{
# 2150|   		WLog_Print(context->priv->log, WLOG_ERROR, "WTSVirtualChannelOpen failed!");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def69]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2283:17: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3317:13: enter_function: entry to ‘rdpdr_server_drive_delete_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3320:26: call_function: inlined call to ‘rdpdr_server_irp_new’ from ‘rdpdr_server_drive_delete_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3325:12: branch_false: following ‘false’ branch (when ‘irp’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3331:29: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3336:9: call_function: calling ‘rdpdr_server_convert_slashes’ from ‘rdpdr_server_drive_delete_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3336:9: return_function: returning to ‘rdpdr_server_drive_delete_file’ from ‘rdpdr_server_convert_slashes’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3338:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3346:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3346:16: call_function: calling ‘rdpdr_server_send_device_create_request’ from ‘rdpdr_server_drive_delete_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3346:16: return_function: returning to ‘rdpdr_server_drive_delete_file’ from ‘rdpdr_server_send_device_create_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2283:17: danger: ‘irp’ leaks here; was allocated at [(3)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/2)
# 2281|   	if (!s)
# 2282|   	{
# 2283|-> 		WLog_Print(context->priv->log, WLOG_ERROR, "Stream_New failed!");
# 2284|   		return CHANNEL_RC_NO_MEMORY;
# 2285|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def70]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2326:17: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3201:13: enter_function: entry to ‘rdpdr_server_drive_close_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3204:26: call_function: inlined call to ‘rdpdr_server_irp_new’ from ‘rdpdr_server_drive_close_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3209:12: branch_false: following ‘false’ branch (when ‘irp’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3215:29: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3221:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3230:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3230:16: call_function: calling ‘rdpdr_server_send_device_close_request’ from ‘rdpdr_server_drive_close_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3230:16: return_function: returning to ‘rdpdr_server_drive_close_file’ from ‘rdpdr_server_send_device_close_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2326:17: danger: ‘irp’ leaks here; was allocated at [(3)](sarif:/runs/0/results/11/codeFlows/0/threadFlows/0/locations/2)
# 2324|   	if (!s)
# 2325|   	{
# 2326|-> 		WLog_Print(context->priv->log, WLOG_ERROR, "Stream_New failed!");
# 2327|   		return CHANNEL_RC_NO_MEMORY;
# 2328|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def71]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2356:17: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3049:13: enter_function: entry to ‘rdpdr_server_drive_read_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3053:26: call_function: inlined call to ‘rdpdr_server_irp_new’ from ‘rdpdr_server_drive_read_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3058:12: branch_false: following ‘false’ branch (when ‘irp’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3064:29: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3070:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3079:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3079:16: call_function: calling ‘rdpdr_server_send_device_read_request’ from ‘rdpdr_server_drive_read_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3079:16: return_function: returning to ‘rdpdr_server_drive_read_file’ from ‘rdpdr_server_send_device_read_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2356:17: danger: ‘irp’ leaks here; was allocated at [(3)](sarif:/runs/0/results/12/codeFlows/0/threadFlows/0/locations/2)
# 2354|   	if (!s)
# 2355|   	{
# 2356|-> 		WLog_Print(context->priv->log, WLOG_ERROR, "Stream_New failed!");
# 2357|   		return CHANNEL_RC_NO_MEMORY;
# 2358|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def72]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2389:17: warning[-Wanalyzer-malloc-leak]: leak of ‘irp’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3126:13: enter_function: entry to ‘rdpdr_server_drive_write_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3130:26: call_function: inlined call to ‘rdpdr_server_irp_new’ from ‘rdpdr_server_drive_write_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3135:12: branch_false: following ‘false’ branch (when ‘irp’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3141:29: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3147:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3156:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3156:16: call_function: calling ‘rdpdr_server_send_device_write_request’ from ‘rdpdr_server_drive_write_file’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3156:16: return_function: returning to ‘rdpdr_server_drive_write_file’ from ‘rdpdr_server_send_device_write_request’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2389:17: danger: ‘irp’ leaks here; was allocated at [(3)](sarif:/runs/0/results/13/codeFlows/0/threadFlows/0/locations/2)
# 2387|   	if (!s)
# 2388|   	{
# 2389|-> 		WLog_Print(context->priv->log, WLOG_ERROR, "Stream_New failed!");
# 2390|   		return CHANNEL_RC_NO_MEMORY;
# 2391|   	}

Error: COMPILER_WARNING (CWE-563): [#def73]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_create_directory_callback1’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2556:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used
# 2556 |         UINT8 information = 0;
#      |               ^~~~~~~~~~~
# 2554|   {
# 2555|   	UINT32 fileId = 0;
# 2556|-> 	UINT8 information = 0;
# 2557|   	WINPR_ASSERT(context);
# 2558|   	WINPR_ASSERT(context->priv);

Error: COMPILER_WARNING (CWE-563): [#def74]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_delete_directory_callback1’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2677:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used
# 2677 |         UINT8 information = 0;
#      |               ^~~~~~~~~~~
# 2675|   {
# 2676|   	UINT32 fileId = 0;
# 2677|-> 	UINT8 information = 0;
# 2678|   	WINPR_ASSERT(context);
# 2679|   	WINPR_ASSERT(context->priv);

Error: COMPILER_WARNING (CWE-563): [#def75]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_open_file_callback’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:2939:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used
# 2939 |         UINT8 information = 0;
#      |               ^~~~~~~~~~~
# 2937|   {
# 2938|   	UINT32 fileId = 0;
# 2939|-> 	UINT8 information = 0;
# 2940|   	WINPR_ASSERT(context);
# 2941|   	WINPR_ASSERT(context->priv);

Error: COMPILER_WARNING (CWE-563): [#def76]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_delete_file_callback1’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3272:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used
# 3272 |         UINT8 information = 0;
#      |               ^~~~~~~~~~~
# 3270|   {
# 3271|   	UINT32 fileId = 0;
# 3272|-> 	UINT8 information = 0;
# 3273|   	WINPR_ASSERT(context);
# 3274|   	WINPR_ASSERT(context->priv);

Error: COMPILER_WARNING (CWE-563): [#def77]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_rename_file_callback2’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3388:16: warning[-Wunused-but-set-variable]: variable ‘length’ set but not used
# 3388 |         UINT32 length = 0;
#      |                ^~~~~~
# 3386|                                                        UINT32 completionId, UINT32 ioStatus)
# 3387|   {
# 3388|-> 	UINT32 length = 0;
# 3389|   	WINPR_ASSERT(context);
# 3390|   	WINPR_ASSERT(context->priv);

Error: COMPILER_WARNING (CWE-563): [#def78]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c: scope_hint: In function ‘rdpdr_server_drive_rename_file_callback1’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3431:15: warning[-Wunused-but-set-variable]: variable ‘information’ set but not used
# 3431 |         UINT8 information = 0;
#      |               ^~~~~~~~~~~
# 3429|   {
# 3430|   	UINT32 fileId = 0;
# 3431|-> 	UINT8 information = 0;
# 3432|   	WINPR_ASSERT(context);
# 3433|   	WINPR_ASSERT(context->priv);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def79]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3593:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘rdpdr_server_context_free’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3565:60: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3567:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3570:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3583:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3584:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3593:9: danger: deallocated with ‘rdpdr_server_context_free’ here; allocation at [(1)](sarif:/runs/0/results/14/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 3591|   	WINPR_PRAGMA_DIAG_PUSH
# 3592|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 3593|-> 	rdpdr_server_context_free(context);
# 3594|   	WINPR_PRAGMA_DIAG_POP
# 3595|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def80]
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3603:9: warning[-Wanalyzer-use-after-free]: use after ‘rdpdr_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3563:21: enter_function: entry to ‘rdpdr_server_context_new’
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3565:60: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3567:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3570:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3583:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3584:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3593:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/rdpdr/server/rdpdr_main.c:3593:9: call_function: calling ‘rdpdr_server_context_free’ from ‘rdpdr_server_context_new’
# 3601|   		return;
# 3602|   
# 3603|-> 	rdpdr_server_private_free(context->priv);
# 3604|   	free(context);
# 3605|   }

Error: GCC_ANALYZER_WARNING (CWE-416): [#def81]
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:475:14: warning[-Wanalyzer-use-after-free]: use after ‘cam_dev_enum_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:580:26: enter_function: entry to ‘cam_dev_enum_server_context_new’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:584:12: branch_false: following ‘false’ branch (when ‘enumerator’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:587:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:597:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:598:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:604:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:604:9: call_function: calling ‘cam_dev_enum_server_context_free’ from ‘cam_dev_enum_server_context_new’
#  473|   	WINPR_ASSERT(enumerator);
#  474|   
#  475|-> 	if (!enumerator->externalThread && enumerator->thread)
#  476|   	{
#  477|   		(void)SetEvent(enumerator->stopEvent);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def82]
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:600:16: warning[-Wanalyzer-malloc-leak]: leak of ‘enumerator’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:582:61: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:584:12: branch_false: following ‘false’ branch (when ‘enumerator’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:587:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:597:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:600:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:600:16: danger: ‘enumerator’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  598|   		goto fail;
#  599|   
#  600|-> 	return &enumerator->context;
#  601|   fail:
#  602|   	WINPR_PRAGMA_DIAG_PUSH

Error: GCC_ANALYZER_WARNING (CWE-401): [#def83]
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:620:1: warning[-Wanalyzer-malloc-leak]: leak of ‘enumerator’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:580:26: enter_function: entry to ‘cam_dev_enum_server_context_new’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:582:61: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:584:12: branch_false: following ‘false’ branch (when ‘enumerator’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:587:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:597:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:598:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:604:9: call_function: calling ‘cam_dev_enum_server_context_free’ from ‘cam_dev_enum_server_context_new’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:604:9: return_function: returning to ‘cam_dev_enum_server_context_new’ from ‘cam_dev_enum_server_context_free’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_enumerator_main.c:620:1: danger: ‘enumerator’ leaks here; was allocated at [(2)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/1)
#  618|   
#  619|   	free(enumerator);
#  620|-> }

Error: GCC_ANALYZER_WARNING (CWE-416): [#def84]
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:631:14: warning[-Wanalyzer-use-after-free]: use after ‘camera_device_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:926:28: enter_function: entry to ‘camera_device_server_context_new’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:930:12: branch_false: following ‘false’ branch (when ‘device’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:933:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:956:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:957:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:963:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:963:9: call_function: calling ‘camera_device_server_context_free’ from ‘camera_device_server_context_new’
#  629|   	WINPR_ASSERT(device);
#  630|   
#  631|-> 	if (!device->externalThread && device->thread)
#  632|   	{
#  633|   		(void)SetEvent(device->stopEvent);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def85]
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:959:16: warning[-Wanalyzer-malloc-leak]: leak of ‘device’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:928:49: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:930:12: branch_false: following ‘false’ branch (when ‘device’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:933:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:956:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:959:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:959:16: danger: ‘device’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  957|   		goto fail;
#  958|   
#  959|-> 	return &device->context;
#  960|   fail:
#  961|   	WINPR_PRAGMA_DIAG_PUSH

Error: GCC_ANALYZER_WARNING (CWE-401): [#def86]
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:981:1: warning[-Wanalyzer-malloc-leak]: leak of ‘device’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:926:28: enter_function: entry to ‘camera_device_server_context_new’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:928:49: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:930:12: branch_false: following ‘false’ branch (when ‘device’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:933:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:956:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:957:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:963:9: call_function: calling ‘camera_device_server_context_free’ from ‘camera_device_server_context_new’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:963:9: return_function: returning to ‘camera_device_server_context_new’ from ‘camera_device_server_context_free’
FreeRDP-3.12.0/channels/rdpecam/server/camera_device_main.c:981:1: danger: ‘device’ leaks here; was allocated at [(2)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/1)
#  979|   
#  980|   	free(device);
#  981|-> }

Error: CPPCHECK_WARNING (CWE-664): [#def87]
FreeRDP-3.12.0/channels/rdpei/client/rdpei_main.c:1141: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1139|   {
# 1140|   	UINT rc = 0;
# 1141|-> 	va_list ap = { 0 };
# 1142|   	rc = rdpei_touch_process(context, externalId,
# 1143|   	                         RDPINPUT_CONTACT_FLAG_DOWN | RDPINPUT_CONTACT_FLAG_INRANGE |

Error: CPPCHECK_WARNING (CWE-664): [#def88]
FreeRDP-3.12.0/channels/rdpei/client/rdpei_main.c:1145: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1143|   	                         RDPINPUT_CONTACT_FLAG_DOWN | RDPINPUT_CONTACT_FLAG_INRANGE |
# 1144|   	                             RDPINPUT_CONTACT_FLAG_INCONTACT,
# 1145|-> 	                         x, y, contactId, 0, ap);
# 1146|   	return rc;
# 1147|   }

Error: CPPCHECK_WARNING (CWE-664): [#def89]
FreeRDP-3.12.0/channels/rdpei/client/rdpei_main.c:1158: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1156|   {
# 1157|   	UINT rc = 0;
# 1158|-> 	va_list ap = { 0 };
# 1159|   	rc = rdpei_touch_process(context, externalId,
# 1160|   	                         RDPINPUT_CONTACT_FLAG_UPDATE | RDPINPUT_CONTACT_FLAG_INRANGE |

Error: CPPCHECK_WARNING (CWE-664): [#def90]
FreeRDP-3.12.0/channels/rdpei/client/rdpei_main.c:1162: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1160|   	                         RDPINPUT_CONTACT_FLAG_UPDATE | RDPINPUT_CONTACT_FLAG_INRANGE |
# 1161|   	                             RDPINPUT_CONTACT_FLAG_INCONTACT,
# 1162|-> 	                         x, y, contactId, 0, ap);
# 1163|   	return rc;
# 1164|   }

Error: CPPCHECK_WARNING (CWE-664): [#def91]
FreeRDP-3.12.0/channels/rdpei/client/rdpei_main.c:1175: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1173|   {
# 1174|   	UINT error = 0;
# 1175|-> 	va_list ap = { 0 };
# 1176|   	error = rdpei_touch_process(context, externalId,
# 1177|   	                            RDPINPUT_CONTACT_FLAG_UPDATE | RDPINPUT_CONTACT_FLAG_INRANGE |

Error: CPPCHECK_WARNING (CWE-664): [#def92]
FreeRDP-3.12.0/channels/rdpei/client/rdpei_main.c:1179: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1177|   	                            RDPINPUT_CONTACT_FLAG_UPDATE | RDPINPUT_CONTACT_FLAG_INRANGE |
# 1178|   	                                RDPINPUT_CONTACT_FLAG_INCONTACT,
# 1179|-> 	                            x, y, contactId, 0, ap);
# 1180|   	if (error != CHANNEL_RC_OK)
# 1181|   		return error;

Error: CPPCHECK_WARNING (CWE-664): [#def93]
FreeRDP-3.12.0/channels/rdpei/client/rdpei_main.c:1196: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1194|   {
# 1195|   	UINT rc = 0;
# 1196|-> 	va_list ap = { 0 };
# 1197|   	rc = rdpei_touch_process(context, externalId,
# 1198|   	                         RDPINPUT_CONTACT_FLAG_UP | RDPINPUT_CONTACT_FLAG_CANCELED, x, y,

Error: CPPCHECK_WARNING (CWE-664): [#def94]
FreeRDP-3.12.0/channels/rdpei/client/rdpei_main.c:1199: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1197|   	rc = rdpei_touch_process(context, externalId,
# 1198|   	                         RDPINPUT_CONTACT_FLAG_UP | RDPINPUT_CONTACT_FLAG_CANCELED, x, y,
# 1199|-> 	                         contactId, 0, ap);
# 1200|   	return rc;
# 1201|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def95]
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:166:12: warning[-Wanalyzer-malloc-leak]: leak of ‘capsSetV1’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:460:13: enter_function: entry to ‘mouse_cursor_server_context_poll’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:466:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:469:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:469:16: call_function: calling ‘mouse_cursor_server_context_poll_int’ from ‘mouse_cursor_server_context_poll’
#  164|   	capsSet->size = size;
#  165|   
#  166|-> 	if (!ArrayList_Append(capsSets, capsSet))
#  167|   	{
#  168|   		WLog_ERR(TAG, "Failed to append caps set to arraylist");

Error: GCC_ANALYZER_WARNING (CWE-416): [#def96]
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:430:14: warning[-Wanalyzer-use-after-free]: use after ‘mouse_cursor_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:695:27: enter_function: entry to ‘mouse_cursor_server_context_new’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:700:12: branch_false: following ‘false’ branch (when ‘mouse_cursor’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:703:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:714:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:715:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:721:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:721:9: call_function: calling ‘mouse_cursor_server_context_free’ from ‘mouse_cursor_server_context_new’
#  428|   	WINPR_ASSERT(mouse_cursor);
#  429|   
#  430|-> 	if (!mouse_cursor->externalThread && mouse_cursor->thread)
#  431|   	{
#  432|   		(void)SetEvent(mouse_cursor->stopEvent);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def97]
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:717:16: warning[-Wanalyzer-malloc-leak]: leak of ‘mouse_cursor’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:698:35: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:700:12: branch_false: following ‘false’ branch (when ‘mouse_cursor’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:703:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:714:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:717:16: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:717:16: danger: ‘mouse_cursor’ leaks here; was allocated at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#  715|   		goto fail;
#  716|   
#  717|-> 	return &mouse_cursor->context;
#  718|   fail:
#  719|   	WINPR_PRAGMA_DIAG_PUSH

Error: GCC_ANALYZER_WARNING (CWE-401): [#def98]
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:737:1: warning[-Wanalyzer-malloc-leak]: leak of ‘mouse_cursor’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:695:27: enter_function: entry to ‘mouse_cursor_server_context_new’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:698:35: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:700:12: branch_false: following ‘false’ branch (when ‘mouse_cursor’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:703:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:714:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:715:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:721:9: call_function: calling ‘mouse_cursor_server_context_free’ from ‘mouse_cursor_server_context_new’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:721:9: return_function: returning to ‘mouse_cursor_server_context_new’ from ‘mouse_cursor_server_context_free’
FreeRDP-3.12.0/channels/rdpemsc/server/mouse_cursor_main.c:737:1: danger: ‘mouse_cursor’ leaks here; was allocated at [(2)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/1)
#  735|   
#  736|   	free(mouse_cursor);
#  737|-> }

Error: COMPILER_WARNING (CWE-1164): [#def99]
FreeRDP-3.12.0/channels/rdpgfx/client/rdpgfx_main.c:636:13: warning[-Wunused-function]: ‘rdpgfx_load_cache_import_offer’ defined but not used
#  636 | static UINT rdpgfx_load_cache_import_offer(RDPGFX_PLUGIN* gfx, RDPGFX_CACHE_IMPORT_OFFER_PDU* offer)
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  634|    * @return 0 on success, otherwise a Win32 error code
#  635|    */
#  636|-> static UINT rdpgfx_load_cache_import_offer(RDPGFX_PLUGIN* gfx, RDPGFX_CACHE_IMPORT_OFFER_PDU* offer)
#  637|   {
#  638|   	int count = 0;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def100]
FreeRDP-3.12.0/channels/rdpgfx/client/rdpgfx_main.c:2409:9: warning[-Wanalyzer-use-after-free]: use after ‘rdpgfx_client_context_free’ of ‘context’
FreeRDP-3.12.0/channels/rdpgfx/client/rdpgfx_main.c:2213:13: enter_function: entry to ‘terminate_plugin_cb’
FreeRDP-3.12.0/channels/rdpgfx/client/rdpgfx_main.c:2220:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/rdpgfx/client/rdpgfx_main.c:2220:9: call_function: calling ‘rdpgfx_client_context_free’ from ‘terminate_plugin_cb’
# 2407|   		return;
# 2408|   
# 2409|-> 	gfx = (RDPGFX_PLUGIN*)context->handle;
# 2410|   
# 2411|   	free_surfaces(context, gfx->SurfaceTable);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def101]
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1314:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘capsSet’
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1285:13: enter_function: entry to ‘rdpgfx_recv_caps_advertise_pdu’
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1291:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1294:14: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1294:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1297:9: call_function: inlined call to ‘stream_read_u16_le’ from ‘rdpgfx_recv_caps_advertise_pdu’
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1298:12: branch_false: following ‘false’ branch (when ‘v == 0’)...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1305:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1307:32: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1309:44: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1309:44: release_memory: ‘capsSets’ is NULL
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1309:32: release_memory: ‘capsSets’ is NULL
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1311:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1314:17: call_function: inlined call to ‘stream_read_u32_le’ from ‘rdpgfx_recv_caps_advertise_pdu’
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1314:17: danger: dereference of NULL ‘capsSet’
# 1312|   			goto fail;
# 1313|   
# 1314|-> 		Stream_Read_UINT32(s, capsSet->version); /* version (4 bytes) */
# 1315|   		Stream_Read_UINT32(s, capsSet->length);  /* capsDataLength (4 bytes) */
# 1316|   

Error: GCC_ANALYZER_WARNING (CWE-416): [#def102]
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1644:30: warning[-Wanalyzer-use-after-free]: use after ‘rdpgfx_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1697:22: enter_function: entry to ‘rdpgfx_server_context_new’
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1699:62: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1701:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1707:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1737:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1743:21: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1744:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1745:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1766:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1766:9: call_function: calling ‘rdpgfx_server_context_free’ from ‘rdpgfx_server_context_new’
# 1642|   	WINPR_ASSERT(context);
# 1643|   
# 1644|-> 	RdpgfxServerPrivate* priv = context->priv;
# 1645|   	WINPR_ASSERT(priv);
# 1646|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def103]
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1766:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1701:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1707:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1735:35: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1737:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1743:21: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1744:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1745:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1766:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/2)
# 1764|   	WINPR_PRAGMA_DIAG_PUSH
# 1765|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1766|-> 	rdpgfx_server_context_free(context);
# 1767|   	WINPR_PRAGMA_DIAG_POP
# 1768|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def104]
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1766:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘rdpgfx_server_context_free’
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1699:62: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1701:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1707:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1737:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1743:21: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1744:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1745:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpgfx/server/rdpgfx_main.c:1766:9: danger: deallocated with ‘rdpgfx_server_context_free’ here; allocation at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 1764|   	WINPR_PRAGMA_DIAG_PUSH
# 1765|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1766|-> 	rdpgfx_server_context_free(context);
# 1767|   	WINPR_PRAGMA_DIAG_POP
# 1768|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def105]
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:175:12: warning[-Wanalyzer-malloc-leak]: leak of ‘audio_formats_new((long unsigned int)*rdpsnd.NumberOfServerFormats)’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1637:13: enter_function: entry to ‘rdpsnd_on_data_received’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1646:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1652:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1654:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1658:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1668:30: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1668:30: call_function: calling ‘rdpsnd_recv_pdu’ from ‘rdpsnd_on_data_received’
#  173|   	rdpsnd->ClientFormats = audio_formats_new(rdpsnd->NumberOfServerFormats);
#  174|   
#  175|-> 	if (!rdpsnd->ClientFormats || !rdpsnd->device)
#  176|   		return;
#  177|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def106]
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:290:20: warning[-Wanalyzer-malloc-leak]: leak of ‘audio_formats_new((long unsigned int)v)’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1637:13: enter_function: entry to ‘rdpsnd_on_data_received’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1646:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1652:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1654:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1658:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1668:30: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1668:30: call_function: calling ‘rdpsnd_recv_pdu’ from ‘rdpsnd_on_data_received’
#  288|   		rdpsnd->ServerFormats = audio_formats_new(wNumberOfFormats);
#  289|   
#  290|-> 		if (!rdpsnd->ServerFormats)
#  291|   			return CHANNEL_RC_NO_MEMORY;
#  292|   

Error: COMPILER_WARNING (CWE-563): [#def107]
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_recv_wave2_pdu’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:699:16: warning[-Wunused-but-set-variable]: variable ‘dwAudioTimeStamp’ set but not used
#  699 |         UINT32 dwAudioTimeStamp = 0;
#      |                ^~~~~~~~~~~~~~~~
#  697|   	UINT16 wFormatNo = 0;
#  698|   	AUDIO_FORMAT* format = NULL;
#  699|-> 	UINT32 dwAudioTimeStamp = 0;
#  700|   
#  701|   	if (!Stream_CheckAndLogRequiredLength(TAG, s, 12))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def108]
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1849:25: warning[-Wanalyzer-malloc-leak]: leak of ‘allocatePlugin()’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1803:1: enter_function: entry to ‘rdpsnd_DVCPluginEntry’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1813:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1822:26: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1822:26: call_function: calling ‘allocatePlugin’ from ‘rdpsnd_DVCPluginEntry’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1822:26: return_function: returning to ‘rdpsnd_DVCPluginEntry’ from ‘allocatePlugin’
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1823:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1829:17: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1840:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1845:27: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpsnd/client/rdpsnd_main.c:1849:25: danger: ‘allocatePlugin()’ leaks here; was allocated at [(6)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/5)
# 1847|   		rdpsnd->channelEntryPoints.pExtendedData = cnv.ev;
# 1848|   
# 1849|-> 		error = pEntryPoints->RegisterPlugin(pEntryPoints, RDPSND_CHANNEL_NAME, iface);
# 1850|   	}
# 1851|   	else

Error: COMPILER_WARNING (CWE-563): [#def109]
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:188:16: warning[-Wunused-but-set-variable]: variable ‘udpPort’ set but not used
#  188 |         UINT16 udpPort = 0;
#      |                ^~~~~~~
#  186|   {
#  187|   	UINT16 num_known_format = 0;
#  188|-> 	UINT16 udpPort = 0;
#  189|   	BYTE lastblock = 0;
#  190|   	UINT error = CHANNEL_RC_OK;

Error: COMPILER_WARNING (CWE-563): [#def110]
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c: scope_hint: In function ‘rdpsnd_server_recv_formats’
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:189:14: warning[-Wunused-but-set-variable]: variable ‘lastblock’ set but not used
#  189 |         BYTE lastblock = 0;
#      |              ^~~~~~~~~
#  187|   	UINT16 num_known_format = 0;
#  188|   	UINT16 udpPort = 0;
#  189|-> 	BYTE lastblock = 0;
#  190|   	UINT error = CHANNEL_RC_OK;
#  191|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def111]
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1094:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘rdpsnd_server_context_free’
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1046:62: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1048:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1051:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1065:12: branch_true: following ‘true’ branch (when ‘priv’ is NULL)...
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1067:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1094:9: danger: deallocated with ‘rdpsnd_server_context_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 1092|   	WINPR_PRAGMA_DIAG_PUSH
# 1093|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1094|-> 	rdpsnd_server_context_free(context);
# 1095|   	WINPR_PRAGMA_DIAG_POP
# 1096|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def112]
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1114:13: warning[-Wanalyzer-use-after-free]: use after ‘rdpsnd_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1043:22: enter_function: entry to ‘rdpsnd_server_context_new’
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1046:62: acquire_memory: allocated here
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1048:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1051:9: branch_false: ...to here
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1065:12: branch_true: following ‘true’ branch (when ‘priv’ is NULL)...
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1067:17: branch_true: ...to here
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1094:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/rdpsnd/server/rdpsnd_main.c:1094:9: call_function: calling ‘rdpsnd_server_context_free’ from ‘rdpsnd_server_context_new’
# 1112|   		return;
# 1113|   
# 1114|-> 	if (context->priv)
# 1115|   	{
# 1116|   		rdpsnd_server_stop(context);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def113]
FreeRDP-3.12.0/channels/remdesk/server/remdesk_main.c:457:36: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 4096)’
FreeRDP-3.12.0/channels/remdesk/server/remdesk_main.c:448:13: acquire_memory: allocated here
FreeRDP-3.12.0/channels/remdesk/server/remdesk_main.c:450:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/remdesk/server/remdesk_main.c:457:36: branch_false: ...to here
FreeRDP-3.12.0/channels/remdesk/server/remdesk_main.c:457:36: danger: ‘Stream_New(0, 4096)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#  455|   	}
#  456|   
#  457|-> 	if (WTSVirtualChannelQuery(context->priv->ChannelHandle, WTSVirtualEventHandle, &buffer,
#  458|   	                           &BytesReturned) == TRUE)
#  459|   	{

Error: GCC_ANALYZER_WARNING (CWE-401): [#def114]
FreeRDP-3.12.0/channels/remdesk/server/remdesk_main.c:571:14: warning[-Wanalyzer-malloc-leak]: leak of ‘**context.priv.ChannelHandle’
FreeRDP-3.12.0/channels/remdesk/server/remdesk_main.c:569:13: acquire_memory: allocated here
FreeRDP-3.12.0/channels/remdesk/server/remdesk_main.c:571:14: danger: ‘**context.priv.ChannelHandle’ leaks here; was allocated at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#  569|   	    WTSVirtualChannelOpen(context->vcm, WTS_CURRENT_SESSION, REMDESK_SVC_CHANNEL_NAME);
#  570|   
#  571|-> 	if (!context->priv->ChannelHandle)
#  572|   	{
#  573|   		WLog_ERR(TAG, "WTSVirtualChannelOpen failed!");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def115]
FreeRDP-3.12.0/channels/serial/client/serial_main.c:173:12: warning[-Wanalyzer-malloc-leak]: leak of ‘*serial.hComm’
FreeRDP-3.12.0/channels/serial/client/serial_main.c:508:21: enter_function: entry to ‘irp_thread_func’
FreeRDP-3.12.0/channels/serial/client/serial_main.c:518:22: call_function: calling ‘serial_process_irp’ from ‘irp_thread_func’
#  171|   	               NULL);                                                  /* TemplateFile */
#  172|   
#  173|-> 	if (!serial->hComm || (serial->hComm == INVALID_HANDLE_VALUE))
#  174|   	{
#  175|   		WLog_Print(serial->log, WLOG_WARN, "CreateFile failure: %s last-error: 0x%08" PRIX32 "",

Error: GCC_ANALYZER_WARNING (CWE-416): [#def116]
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:351:14: warning[-Wanalyzer-use-after-free]: use after ‘telemetry_server_context_free’ of ‘context’
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:410:25: enter_function: entry to ‘telemetry_server_context_new’
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:414:12: branch_false: following ‘false’ branch (when ‘telemetry’ is non-NULL)...
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:417:9: branch_false: ...to here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:425:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:426:17: branch_true: ...to here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:432:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:432:9: call_function: calling ‘telemetry_server_context_free’ from ‘telemetry_server_context_new’
#  349|   	WINPR_ASSERT(telemetry);
#  350|   
#  351|-> 	if (!telemetry->externalThread && telemetry->thread)
#  352|   	{
#  353|   		(void)SetEvent(telemetry->stopEvent);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def117]
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:428:16: warning[-Wanalyzer-malloc-leak]: leak of ‘telemetry’
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:412:58: acquire_memory: allocated here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:414:12: branch_false: following ‘false’ branch (when ‘telemetry’ is non-NULL)...
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:417:9: branch_false: ...to here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:425:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:428:16: branch_false: ...to here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:428:16: danger: ‘telemetry’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  426|   		goto fail;
#  427|   
#  428|-> 	return &telemetry->context;
#  429|   fail:
#  430|   	WINPR_PRAGMA_DIAG_PUSH

Error: GCC_ANALYZER_WARNING (CWE-401): [#def118]
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:448:1: warning[-Wanalyzer-malloc-leak]: leak of ‘telemetry’
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:410:25: enter_function: entry to ‘telemetry_server_context_new’
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:412:58: acquire_memory: allocated here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:414:12: branch_false: following ‘false’ branch (when ‘telemetry’ is non-NULL)...
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:417:9: branch_false: ...to here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:425:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:426:17: branch_true: ...to here
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:432:9: call_function: calling ‘telemetry_server_context_free’ from ‘telemetry_server_context_new’
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:432:9: return_function: returning to ‘telemetry_server_context_new’ from ‘telemetry_server_context_free’
FreeRDP-3.12.0/channels/telemetry/server/telemetry_main.c:448:1: danger: ‘telemetry’ leaks here; was allocated at [(2)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/1)
#  446|   
#  447|   	free(telemetry);
#  448|-> }

Error: COMPILER_WARNING (CWE-563): [#def119]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_register_request_callback’
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:124:16: warning[-Wunused-but-set-variable]: variable ‘NumRequestCompletion’ set but not used
#  124 |         UINT32 NumRequestCompletion = 0;
#      |                ^~~~~~~~~~~~~~~~~~~~
#  122|                                                        IUDEVMAN* udevman)
#  123|   {
#  124|-> 	UINT32 NumRequestCompletion = 0;
#  125|   	UINT32 RequestCompletion = 0;
#  126|   

Error: COMPILER_WARNING (CWE-563): [#def120]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:320:16: warning[-Wunused-but-set-variable]: variable ‘IoControlCode’ set but not used
#  320 |         UINT32 IoControlCode = 0;
#      |                ^~~~~~~~~~~~~
#  318|   {
#  319|   	wStream* out = NULL;
#  320|-> 	UINT32 IoControlCode = 0;
#  321|   	UINT32 InterfaceId = 0;
#  322|   	UINT32 InputBufferSize = 0;

Error: COMPILER_WARNING (CWE-563): [#def121]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_internal_io_control’
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:323:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used
#  323 |         UINT32 OutputBufferSize = 0;
#      |                ^~~~~~~~~~~~~~~~
#  321|   	UINT32 InterfaceId = 0;
#  322|   	UINT32 InputBufferSize = 0;
#  323|-> 	UINT32 OutputBufferSize = 0;
#  324|   	UINT32 RequestId = 0;
#  325|   	UINT32 frames = 0;

Error: COMPILER_WARNING (CWE-563): [#def122]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:541:16: warning[-Wunused-but-set-variable]: variable ‘ConfigurationHandle’ set but not used
#  541 |         UINT32 ConfigurationHandle = 0;
#      |                ^~~~~~~~~~~~~~~~~~~
#  539|   	UINT32 out_size = 0;
#  540|   	UINT32 InterfaceId = 0;
#  541|-> 	UINT32 ConfigurationHandle = 0;
#  542|   	UINT32 OutputBufferSize = 0;
#  543|   	BYTE InterfaceNumber = 0;

Error: COMPILER_WARNING (CWE-563): [#def123]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_select_interface’
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:542:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used
#  542 |         UINT32 OutputBufferSize = 0;
#      |                ^~~~~~~~~~~~~~~~
#  540|   	UINT32 InterfaceId = 0;
#  541|   	UINT32 ConfigurationHandle = 0;
#  542|-> 	UINT32 OutputBufferSize = 0;
#  543|   	BYTE InterfaceNumber = 0;
#  544|   	wStream* out = NULL;

Error: COMPILER_WARNING (CWE-563): [#def124]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_pipe_request’
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:1219:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used
# 1219 |         UINT32 OutputBufferSize = 0;
#      |                ^~~~~~~~~~~~~~~~
# 1217|   	UINT32 PipeHandle = 0;
# 1218|   	UINT32 EndpointAddress = 0;
# 1219|-> 	UINT32 OutputBufferSize = 0;
# 1220|   	UINT32 usbd_status = 0;
# 1221|   	wStream* out = NULL;

Error: COMPILER_WARNING (CWE-563): [#def125]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urb_get_current_frame_number’
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:1300:16: warning[-Wunused-but-set-variable]: variable ‘OutputBufferSize’ set but not used
# 1300 |         UINT32 OutputBufferSize = 0;
#      |                ^~~~~~~~~~~~~~~~
# 1298|   	UINT32 out_size = 0;
# 1299|   	UINT32 InterfaceId = 0;
# 1300|-> 	UINT32 OutputBufferSize = 0;
# 1301|   	UINT32 dummy_frames = 0;
# 1302|   	wStream* out = NULL;

Error: COMPILER_WARNING (CWE-563): [#def126]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:1580:16: warning[-Wunused-but-set-variable]: variable ‘CbTsUrb’ set but not used
# 1580 |         UINT32 CbTsUrb = 0;
#      |                ^~~~~~~
# 1578|                                               int transferDir)
# 1579|   {
# 1580|-> 	UINT32 CbTsUrb = 0;
# 1581|   	UINT16 Size = 0;
# 1582|   	UINT16 URB_Function = 0;

Error: COMPILER_WARNING (CWE-563): [#def127]
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c: scope_hint: In function ‘urbdrc_process_transfer_request’
FreeRDP-3.12.0/channels/urbdrc/client/data_transfer.c:1581:16: warning[-Wunused-but-set-variable]: variable ‘Size’ set but not used
# 1581 |         UINT16 Size = 0;
#      |                ^~~~
# 1579|   {
# 1580|   	UINT32 CbTsUrb = 0;
# 1581|-> 	UINT16 Size = 0;
# 1582|   	UINT16 URB_Function = 0;
# 1583|   	UINT32 RequestId = 0;

Error: CPPCHECK_WARNING (CWE-664): [#def128]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:144: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  142|   	{
#  143|   		char buffer[8192] = { 0 };
#  144|-> 		va_list ap = { 0 };
#  145|   		va_start(ap, error);
#  146|   		(void)vsnprintf(buffer, sizeof(buffer), fmt, ap);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def129]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:632:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘t_MsPipe’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:598:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:615:31: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:617:43: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:625:39: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:627:60: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:627:60: acquire_memory: this call could return NULL
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:629:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:632:33: danger: ‘t_MsPipe’ could be NULL: unchecked value from [(7)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/6)
#  630|   			{
#  631|   				MsPipe = MsInterface->MsPipes[pnum];
#  632|-> 				t_MsPipe->MaximumPacketSize = MsPipe->MaximumPacketSize;
#  633|   				t_MsPipe->MaximumTransferSize = MsPipe->MaximumTransferSize;
#  634|   				t_MsPipe->PipeFlags = MsPipe->PipeFlags;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def130]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:639:33: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘t_MsPipe’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:598:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:615:31: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:617:43: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:625:39: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:627:60: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:627:60: acquire_memory: this call could return NULL
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:639:33: danger: ‘t_MsPipe’ could be NULL: unchecked value from [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6)
#  637|   			{
#  638|   				t_MsPipe->MaximumPacketSize = 0;
#  639|-> 				t_MsPipe->MaximumTransferSize = 0xffffffff;
#  640|   				t_MsPipe->PipeFlags = 0;
#  641|   			}

Error: CPPCHECK_WARNING (CWE-476): [#def131]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:643: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: t_MsPipe
#  641|   			}
#  642|   
#  643|-> 			t_MsPipe->PipeHandle = 0;
#  644|   			t_MsPipe->bEndpointAddress = 0;
#  645|   			t_MsPipe->bInterval = 0;

Error: CPPCHECK_WARNING (CWE-476): [#def132]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:644: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: t_MsPipe
#  642|   
#  643|   			t_MsPipe->PipeHandle = 0;
#  644|-> 			t_MsPipe->bEndpointAddress = 0;
#  645|   			t_MsPipe->bInterval = 0;
#  646|   			t_MsPipe->PipeType = 0;

Error: CPPCHECK_WARNING (CWE-476): [#def133]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:645: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: t_MsPipe
#  643|   			t_MsPipe->PipeHandle = 0;
#  644|   			t_MsPipe->bEndpointAddress = 0;
#  645|-> 			t_MsPipe->bInterval = 0;
#  646|   			t_MsPipe->PipeType = 0;
#  647|   			t_MsPipe->InitCompleted = 0;

Error: CPPCHECK_WARNING (CWE-476): [#def134]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:646: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: t_MsPipe
#  644|   			t_MsPipe->bEndpointAddress = 0;
#  645|   			t_MsPipe->bInterval = 0;
#  646|-> 			t_MsPipe->PipeType = 0;
#  647|   			t_MsPipe->InitCompleted = 0;
#  648|   			t_MsPipes[pnum] = t_MsPipe;

Error: CPPCHECK_WARNING (CWE-476): [#def135]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:647: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: t_MsPipe
#  645|   			t_MsPipe->bInterval = 0;
#  646|   			t_MsPipe->PipeType = 0;
#  647|-> 			t_MsPipe->InitCompleted = 0;
#  648|   			t_MsPipes[pnum] = t_MsPipe;
#  649|   		}

Error: CPPCHECK_WARNING (CWE-476): [#def136]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:648: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: t_MsPipes
#  646|   			t_MsPipe->PipeType = 0;
#  647|   			t_MsPipe->InitCompleted = 0;
#  648|-> 			t_MsPipes[pnum] = t_MsPipe;
#  649|   		}
#  650|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def137]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:648:25: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘t_MsPipes’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:598:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:615:31: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:617:43: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:623:46: acquire_memory: this call could return NULL
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:625:39: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:627:60: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:648:25: danger: ‘t_MsPipes + (long unsigned int)pnum * 8’ could be NULL: unchecked value from [(5)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/4)
#  646|   			t_MsPipe->PipeType = 0;
#  647|   			t_MsPipe->InitCompleted = 0;
#  648|-> 			t_MsPipes[pnum] = t_MsPipe;
#  649|   		}
#  650|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def138]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1521:13: warning[-Wanalyzer-malloc-leak]: leak of ‘pdev’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1701:18: enter_function: entry to ‘udev_init’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1712:26: acquire_memory: allocated here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1714:12: branch_false: following ‘false’ branch (when ‘pdev’ is non-NULL)...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1717:9: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1720:12: branch_false: following ‘false’ branch (when ‘device’ is NULL)...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1723:36: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1725:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1726:17: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1812:9: call_function: calling ‘udev_free’ from ‘udev_init’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1812:9: return_function: returning to ‘udev_init’ from ‘udev_free’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1521:13: danger: ‘pdev’ leaks here; was allocated at [(2)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/1)
# 1519|   	URBDRC_PLUGIN* urbdrc = NULL;
# 1520|   
# 1521|-> 	if (!idev || !udev->urbdrc)
# 1522|   		return;
# 1523|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def139]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1548:9: warning[-Wanalyzer-malloc-leak]: leak of ‘pdev’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1863:11: enter_function: entry to ‘udev_new_by_addr’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1867:16: call_function: calling ‘udev_init’ from ‘udev_new_by_addr’
# 1546|   	libusb_close(udev->hub_handle);
# 1547|   	free(udev->devDescriptor);
# 1548|-> 	free(idev);
# 1549|   }
# 1550|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def140]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1843:22: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1816:8: enter_function: entry to ‘udev_new_by_id’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1824:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1827:9: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1830:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1833:28: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1835:12: branch_false: following ‘false’ branch (when ‘array’ is non-NULL)...
 branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1838:29: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1840:49: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1841:56: call_function: calling ‘udev_new_descript’ from ‘udev_new_by_id’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1841:56: return_function: returning to ‘udev_new_by_id’ from ‘udev_new_descript’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevice.c:1843:22: danger: dereference of NULL ‘udev_new_descript(urbdrc,  dev)’
# 1841|   		LIBUSB_DEVICE_DESCRIPTOR* descriptor = udev_new_descript(urbdrc, dev);
# 1842|   
# 1843|-> 		if ((descriptor->idVendor == idVendor) && (descriptor->idProduct == idProduct))
# 1844|   		{
# 1845|   			array[num] = (PUDEVICE)udev_init(urbdrc, ctx, dev, libusb_get_bus_number(dev),

Error: GCC_ANALYZER_WARNING (CWE-401): [#def141]
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:695:34: warning[-Wanalyzer-malloc-leak]: leak of ‘idpair’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:672:13: enter_function: entry to ‘urbdrc_udevman_register_devices’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:679:16: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:22: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:22: call_function: calling ‘udevman_parse_device_id_addr’ from ‘urbdrc_udevman_register_devices’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:22: return_function: returning to ‘urbdrc_udevman_register_devices’ from ‘udevman_parse_device_id_addr’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:688:20: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:688:20: branch_false: following ‘false’ branch (when ‘add_by_addr == 0’)...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:695:34: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:695:34: acquire_memory: allocated here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:696:28: branch_false: following ‘false’ branch (when ‘idpair’ is non-NULL)...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:698:25: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:700:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:706:25: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:679:16: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:22: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:22: branch_false: following ‘false’ branch (when ‘add_by_addr == 0’)...
 branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:22: call_function: calling ‘udevman_parse_device_id_addr’ from ‘urbdrc_udevman_register_devices’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:22: return_function: returning to ‘urbdrc_udevman_register_devices’ from ‘udevman_parse_device_id_addr’
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:681:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:688:20: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:688:20: branch_false: following ‘false’ branch (when ‘add_by_addr == 0’)...
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:695:34: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/client/libusb/libusb_udevman.c:695:34: danger: ‘idpair’ leaks here; was allocated at [(15)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/14)
#  693|   		else
#  694|   		{
#  695|-> 			idpair = calloc(1, sizeof(VID_PID_PAIR));
#  696|   			if (!idpair)
#  697|   				return CHANNEL_RC_NO_MEMORY;

Error: COMPILER_WARNING (CWE-563): [#def142]
FreeRDP-3.12.0/channels/urbdrc/client/urbdrc_main.c: scope_hint: In function ‘urbdrc_exchange_capabilities’
FreeRDP-3.12.0/channels/urbdrc/client/urbdrc_main.c:389:16: warning[-Wunused-but-set-variable]: variable ‘InterfaceId’ set but not used
#  389 |         UINT32 InterfaceId = 0;
#      |                ^~~~~~~~~~~
#  387|   	UINT32 MessageId = 0;
#  388|   	UINT32 FunctionId = 0;
#  389|-> 	UINT32 InterfaceId = 0;
#  390|   	UINT error = CHANNEL_RC_OK;
#  391|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def143]
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:99:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:307:26: enter_function: entry to ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:313:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:318:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: call_function: calling ‘msusb_msinterface_read_list’ from ‘msusb_msconfig_read’
#   97|   		free(MsPipes[pnum]);
#   98|   
#   99|-> 	free((void*)MsPipes);
#  100|   	return NULL;
#  101|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def144]
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:294:16: warning[-Wanalyzer-malloc-leak]: leak of ‘msusb_msconfig_new()’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:307:26: enter_function: entry to ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:313:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: acquire_memory: allocated here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: call_function: calling ‘msusb_msconfig_new’ from ‘msusb_msconfig_read’
#  292|   MSUSB_CONFIG_DESCRIPTOR* msusb_msconfig_new(void)
#  293|   {
#  294|-> 	return (MSUSB_CONFIG_DESCRIPTOR*)calloc(1, sizeof(MSUSB_CONFIG_DESCRIPTOR));
#  295|   }
#  296|   

Error: GCC_ANALYZER_WARNING (CWE-416): [#def145]
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:301:17: warning[-Wanalyzer-use-after-free]: use after ‘msusb_msconfig_free’ of ‘MsConfig’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:307:26: enter_function: entry to ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:313:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: call_function: calling ‘msusb_msconfig_new’ from ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: return_function: returning to ‘msusb_msconfig_read’ from ‘msusb_msconfig_new’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:318:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: call_function: calling ‘msusb_msinterface_read_list’ from ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: return_function: returning to ‘msusb_msconfig_read’ from ‘msusb_msinterface_read_list’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:323:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:324:17: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:342:9: release_memory: deallocated here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:342:9: call_function: calling ‘msusb_msconfig_free’ from ‘msusb_msconfig_read’
#  299|   	if (MsConfig)
#  300|   	{
#  301|-> 		msusb_msinterface_free_list(MsConfig->MsInterfaces, MsConfig->NumInterfaces);
#  302|   		MsConfig->MsInterfaces = NULL;
#  303|   		free(MsConfig);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def146]
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:342:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:307:26: enter_function: entry to ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:313:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:318:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: call_function: calling ‘msusb_msinterface_read_list’ from ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: return_function: returning to ‘msusb_msconfig_read’ from ‘msusb_msinterface_read_list’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:323:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:326:9: call_function: inlined call to ‘stream_read_u8’ from ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:329:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:331:17: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:342:9: danger: ‘<unknown>’ leaks here; was allocated at [(8)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/7)
#  340|   	return MsConfig;
#  341|   fail:
#  342|-> 	msusb_msconfig_free(MsConfig);
#  343|   	return NULL;
#  344|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def147]
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:342:9: warning[-Wanalyzer-mismatching-deallocation]: ‘msusb_msconfig_new()’ should have been deallocated with ‘free’ but was deallocated with ‘msusb_msconfig_free’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:307:26: enter_function: entry to ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:313:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: call_function: calling ‘msusb_msconfig_new’ from ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:316:20: return_function: returning to ‘msusb_msconfig_read’ from ‘msusb_msconfig_new’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:318:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: branch_false: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: call_function: calling ‘msusb_msinterface_read_list’ from ‘msusb_msconfig_read’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:321:34: return_function: returning to ‘msusb_msconfig_read’ from ‘msusb_msinterface_read_list’
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:323:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:324:17: branch_true: ...to here
FreeRDP-3.12.0/channels/urbdrc/common/msusb.c:342:9: danger: deallocated with ‘msusb_msconfig_free’ here; allocation at [(6)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/5) expects deallocation with ‘free’
#  340|   	return MsConfig;
#  341|   fail:
#  342|-> 	msusb_msconfig_free(MsConfig);
#  343|   	return NULL;
#  344|   }

Error: GCC_ANALYZER_WARNING (CWE-476): [#def148]
FreeRDP-3.12.0/channels/video/client/video_main.c:279:27: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘0’
FreeRDP-3.12.0/channels/video/client/video_main.c:285:20: enter_function: entry to ‘VideoFrame_new’
FreeRDP-3.12.0/channels/video/client/video_main.c:299:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:302:9: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:311:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:312:17: branch_true: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:321:9: call_function: calling ‘VideoFrame_free’ from ‘VideoFrame_new’
#  277|   	WINPR_ASSERT(frame->presentation->video);
#  278|   	WINPR_ASSERT(frame->presentation->video->priv);
#  279|-> 	BufferPool_Return(frame->presentation->video->priv->surfacePool, frame->surfaceData);
#  280|   	PresentationContext_unref(&frame->presentation);
#  281|   	free(frame);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def149]
FreeRDP-3.12.0/channels/video/client/video_main.c:942:1: warning[-Wanalyzer-malloc-leak]: leak of ‘frame’
FreeRDP-3.12.0/channels/video/client/video_main.c:807:13: enter_function: entry to ‘video_VideoData’
FreeRDP-3.12.0/channels/video/client/video_main.c:820:12: branch_false: following ‘false’ branch (when ‘presentation’ is non-NULL)...
FreeRDP-3.12.0/channels/video/client/video_main.c:826:13: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:826:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:833:74: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:833:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:839:66: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:841:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:843:31: branch_true: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:861:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:903:58: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:904:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:908:45: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:908:45: call_function: calling ‘VideoFrame_new’ from ‘video_VideoData’
FreeRDP-3.12.0/channels/video/client/video_main.c:908:45: return_function: returning to ‘video_VideoData’ from ‘VideoFrame_new’
FreeRDP-3.12.0/channels/video/client/video_main.c:909:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:916:29: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:919:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:925:46: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:929:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/video/client/video_main.c:937:25: branch_false: ...to here
FreeRDP-3.12.0/channels/video/client/video_main.c:942:1: danger: ‘frame’ leaks here; was allocated at [(16)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/15)
#  940|   
#  941|   	return CHANNEL_RC_OK;
#  942|-> }
#  943|   
#  944|   static UINT video_data_on_data_received(IWTSVirtualChannelCallback* pChannelCallback, wStream* s)

Error: CPPCHECK_WARNING (CWE-664): [#def150]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_connection_dialog.cpp:61: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   59|   {
#   60|   	std::lock_guard lock(_mux);
#   61|-> 	va_list ap = {};
#   62|   	va_start(ap, fmt);
#   63|   	_title = print(fmt, ap);

Error: CPPCHECK_WARNING (CWE-664): [#def151]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_connection_dialog.cpp:71: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   69|   bool SDLConnectionDialog::showInfo(const char* fmt, ...)
#   70|   {
#   71|-> 	va_list ap = {};
#   72|   	va_start(ap, fmt);
#   73|   	auto rc = show(MSG_INFO, fmt, ap);

Error: CPPCHECK_WARNING (CWE-664): [#def152]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_connection_dialog.cpp:80: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   78|   bool SDLConnectionDialog::showWarn(const char* fmt, ...)
#   79|   {
#   80|-> 	va_list ap = {};
#   81|   	va_start(ap, fmt);
#   82|   	auto rc = show(MSG_WARN, fmt, ap);

Error: CPPCHECK_WARNING (CWE-664): [#def153]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_connection_dialog.cpp:89: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   87|   bool SDLConnectionDialog::showError(const char* fmt, ...)
#   88|   {
#   89|-> 	va_list ap = {};
#   90|   	va_start(ap, fmt);
#   91|   	auto rc = show(MSG_ERROR, fmt, ap);

Error: CPPCHECK_WARNING (CWE-480): [#def154]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:149: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  147|   		{
#  148|   			if (!clear_window(_renderer))
#  149|-> 				throw;
#  150|   
#  151|   			if (!update(_renderer))

Error: CPPCHECK_WARNING (CWE-480): [#def155]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:152: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  150|   
#  151|   			if (!update(_renderer))
#  152|-> 				throw;
#  153|   
#  154|   			if (!_buttons.update(_renderer))

Error: CPPCHECK_WARNING (CWE-480): [#def156]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:155: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  153|   
#  154|   			if (!_buttons.update(_renderer))
#  155|-> 				throw;
#  156|   
#  157|   			SDL_Event event = {};

Error: CPPCHECK_WARNING (CWE-480): [#def157]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:174: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  172|   							{
#  173|   								if (!cur->remove_str(_renderer, 1))
#  174|-> 									throw;
#  175|   							}
#  176|   						}

Error: CPPCHECK_WARNING (CWE-480): [#def158]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:219: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  217|   					{
#  218|   						if (!cur->append_str(_renderer, event.text.text))
#  219|-> 							throw;
#  220|   					}
#  221|   				}

Error: CPPCHECK_WARNING (CWE-480): [#def159]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:229: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  227|   					{
#  228|   						if (!cur.set_mouseover(_renderer, false))
#  229|-> 							throw;
#  230|   					}
#  231|   					if (TextInputIndex >= 0)

Error: CPPCHECK_WARNING (CWE-480): [#def160]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:235: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  233|   						auto& cur = _list[static_cast<size_t>(TextInputIndex)];
#  234|   						if (!cur.set_mouseover(_renderer, true))
#  235|-> 							throw;
#  236|   					}
#  237|   

Error: CPPCHECK_WARNING (CWE-480): [#def161]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:278: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  276|   			{
#  277|   				if (!cur.set_highlight(_renderer, false))
#  278|-> 					throw;
#  279|   			}
#  280|   			auto cur = get(CurrentActiveTextInput);

Error: CPPCHECK_WARNING (CWE-480): [#def162]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_input_widgets.cpp:284: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  282|   			{
#  283|   				if (!cur->set_highlight(_renderer, true))
#  284|-> 					throw;
#  285|   			}
#  286|   

Error: CPPCHECK_WARNING (CWE-480): [#def163]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_selectlist.cpp:67: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#   65|   		{
#   66|   			if (!clear_window(_renderer))
#   67|-> 				throw;
#   68|   
#   69|   			if (!update_text())

Error: CPPCHECK_WARNING (CWE-480): [#def164]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_selectlist.cpp:70: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#   68|   
#   69|   			if (!update_text())
#   70|-> 				throw;
#   71|   
#   72|   			if (!_buttons.update(_renderer))

Error: CPPCHECK_WARNING (CWE-480): [#def165]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_selectlist.cpp:73: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#   71|   
#   72|   			if (!_buttons.update(_renderer))
#   73|-> 				throw;
#   74|   
#   75|   			SDL_Event event = {};

Error: CPPCHECK_WARNING (CWE-480): [#def166]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_selectlist.cpp:128: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  126|   						auto& cur = _list[WINPR_ASSERTING_INT_CAST(size_t, TextInputIndex)];
#  127|   						if (!cur.set_mouseover(_renderer, true))
#  128|-> 							throw;
#  129|   					}
#  130|   

Error: CPPCHECK_WARNING (CWE-480): [#def167]
FreeRDP-3.12.0/client/SDL/SDL2/dialogs/sdl_selectlist.cpp:164: error[rethrowNoCurrentException]: Rethrowing current exception with 'throw;', it seems there is no current exception to rethrow. If there is no current exception this calls std::terminate(). More: https://isocpp.org/wiki/faq/exceptions#throw-without-an-object
#  162|   				auto& cur = _list[WINPR_ASSERTING_INT_CAST(size_t, CurrentActiveTextInput)];
#  163|   				if (!cur.set_highlight(_renderer, true))
#  164|-> 					throw;
#  165|   			}
#  166|   

Error: CPPCHECK_WARNING (CWE-664): [#def168]
FreeRDP-3.12.0/client/SDL/SDL2/sdl_utils.cpp:155: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  153|   	SDL_UserEvent* event = &ev.user;
#  154|   
#  155|-> 	va_list ap = {};
#  156|   	va_start(ap, type);
#  157|   	event->type = type;

Error: COMPILER_WARNING (CWE-1164): [#def169]
FreeRDP-3.12.0/client/Wayland/wlf_disp.c:291:6: warning[-Wunused-function]: ‘wlf_disp_sendLayout’ defined but not used
#  291 | UINT wlf_disp_sendLayout(DispClientContext* disp, const rdpMonitor* monitors, size_t nmonitors)
#      |      ^~~~~~~~~~~~~~~~~~~
#  289|   }
#  290|   
#  291|-> UINT wlf_disp_sendLayout(DispClientContext* disp, const rdpMonitor* monitors, size_t nmonitors)
#  292|   {
#  293|   	UINT ret = CHANNEL_RC_OK;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def170]
FreeRDP-3.12.0/client/X11/xf_client.c:672:35: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘xevent.xvisibility.state’
FreeRDP-3.12.0/client/X11/xf_client.c:576:6: enter_function: entry to ‘xf_create_window’
FreeRDP-3.12.0/client/X11/xf_client.c:628:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:630:49: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:644:31: call_function: calling ‘xf_window_get_title’ from ‘xf_create_window’
FreeRDP-3.12.0/client/X11/xf_client.c:644:31: return_function: returning to ‘xf_create_window’ from ‘xf_window_get_title’
FreeRDP-3.12.0/client/X11/xf_client.c:646:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:651:21: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:669:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:672:35: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:672:35: danger: use of uninitialized value ‘xevent.xvisibility.state’ here
#  670|   			xf_SetWindowFullscreen(xfc, xfc->window, xfc->fullscreen);
#  671|   
#  672|-> 		xfc->unobscured = (xevent.xvisibility.state == VisibilityUnobscured);
#  673|   		XSetWMProtocols(xfc->display, xfc->window->handle, &(xfc->WM_DELETE_WINDOW), 1);
#  674|   		xfc->drawable = xfc->window->handle;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def171]
FreeRDP-3.12.0/client/X11/xf_client.c:1209:20: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_keyboard_remap_string_to_list(freerdp_settings_get_string(*(xfContext *)context.common.context.settings, 2622))’
FreeRDP-3.12.0/client/X11/xf_client.c:1158:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1161:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1167:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1169:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1169:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1171:9: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1203:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1206:21: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1208:36: acquire_memory: allocated here
FreeRDP-3.12.0/client/X11/xf_client.c:1209:20: danger: ‘freerdp_keyboard_remap_string_to_list(freerdp_settings_get_string(*(xfContext *)context.common.context.settings, 2622))’ leaks here; was allocated at [(9)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/8)
# 1207|   
# 1208|   		xfc->remap_table = freerdp_keyboard_remap_string_to_list(KeyboardRemappingList);
# 1209|-> 		if (!xfc->remap_table)
# 1210|   			return FALSE;
# 1211|   		if (!xf_keyboard_init(xfc))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def172]
FreeRDP-3.12.0/client/X11/xf_client.c:1439:13: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_clipboard_new(xfc, (int)(freerdp_settings_get_uint32(settings, 2304) != 1))’
FreeRDP-3.12.0/client/X11/xf_client.c:1390:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1393:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1393:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1396:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1396:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1399:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1399:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1402:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1402:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1407:13: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1439:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1440:54: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1440:32: acquire_memory: allocated here
FreeRDP-3.12.0/client/X11/xf_client.c:1439:13: danger: ‘xf_clipboard_new(xfc, (int)(freerdp_settings_get_uint32(settings, 2304) != 1))’ leaks here; was allocated at [(13)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/12)
# 1437|   	const BOOL serverIsWindowsPlatform =
# 1438|   	    (freerdp_settings_get_uint32(settings, FreeRDP_OsMajorType) == OSMAJORTYPE_WINDOWS);
# 1439|-> 	if (freerdp_settings_get_bool(settings, FreeRDP_RedirectClipboard) &&
# 1440|   	    !(xfc->clipboard = xf_clipboard_new(xfc, !serverIsWindowsPlatform)))
# 1441|   		return FALSE;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def173]
FreeRDP-3.12.0/client/X11/xf_client.c:1443:12: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_disp_new(xfc)’
FreeRDP-3.12.0/client/X11/xf_client.c:1390:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1393:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1393:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1396:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1396:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1399:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1399:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1402:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1402:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1407:13: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1443:29: acquire_memory: allocated here
FreeRDP-3.12.0/client/X11/xf_client.c:1443:12: danger: ‘xf_disp_new(xfc)’ leaks here; was allocated at [(11)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/10)
# 1441|   		return FALSE;
# 1442|   
# 1443|-> 	if (!(xfc->xfDisp = xf_disp_new(xfc)))
# 1444|   		return FALSE;
# 1445|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def174]
FreeRDP-3.12.0/client/X11/xf_client.c:1450:20: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &xf_handle_pipe,  xfc, 0, 0)’
FreeRDP-3.12.0/client/X11/xf_client.c:1390:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1393:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1393:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1396:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1396:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1399:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1399:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1402:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1402:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1407:13: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1443:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1446:28: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1447:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1449:35: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1449:35: acquire_memory: allocated here
FreeRDP-3.12.0/client/X11/xf_client.c:1450:20: danger: ‘CreateThread(0, 0, &xf_handle_pipe,  xfc, 0, 0)’ leaks here; was allocated at [(15)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/14)
# 1448|   	{
# 1449|   		xfc->pipethread = CreateThread(NULL, 0, xf_handle_pipe, xfc, 0, NULL);
# 1450|-> 		if (!xfc->pipethread)
# 1451|   			return FALSE;
# 1452|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def175]
FreeRDP-3.12.0/client/X11/xf_client.c:1931:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexA(0, 0, 0)’
FreeRDP-3.12.0/client/X11/xf_client.c:1144:13: enter_function: entry to ‘xf_pre_connect’
FreeRDP-3.12.0/client/X11/xf_client.c:1158:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1161:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1161:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1163:22: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1163:22: call_function: calling ‘xf_setup_x11’ from ‘xf_pre_connect’
# 1929|   	xfc->mutex = CreateMutex(NULL, FALSE, NULL);
# 1930|   
# 1931|-> 	if (!xfc->mutex)
# 1932|   	{
# 1933|   		WLog_ERR(TAG, "Could not create mutex!");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def176]
FreeRDP-3.12.0/client/X11/xf_client.c:1963:25: warning[-Wanalyzer-malloc-leak]: leak of ‘calloc(nitems, 8)’
FreeRDP-3.12.0/client/X11/xf_client.c:1144:13: enter_function: entry to ‘xf_pre_connect’
FreeRDP-3.12.0/client/X11/xf_client.c:1158:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1161:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1161:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_client.c:1163:22: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_client.c:1163:22: call_function: calling ‘xf_setup_x11’ from ‘xf_pre_connect’
# 1961|   			xfc->supportedAtoms = calloc(xfc->supportedAtomCount, sizeof(Atom));
# 1962|   			WINPR_ASSERT(xfc->supportedAtoms);
# 1963|-> 			memcpy(xfc->supportedAtoms, data, nitems * sizeof(Atom));
# 1964|   		}
# 1965|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def177]
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:235:24: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_cached_data_new_copy(data, (long unsigned int)size)’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2124:1: enter_function: entry to ‘xf_cliprdr_server_format_data_response’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2152:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2160:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2160:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2164:9: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2284:12: branch_false: following ‘false’ branch (when ‘willQuit == 0’)...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2289:12: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2289:12: branch_false: following ‘false’ branch (when ‘pDstData’ is NULL)...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2313:49: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2313:49: call_function: calling ‘xf_cached_data_new_copy’ from ‘xf_cliprdr_server_format_data_response’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2313:49: return_function: returning to ‘xf_cliprdr_server_format_data_response’ from ‘xf_cached_data_new_copy’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2314:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2318:80: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:235:24: danger: ‘xf_cached_data_new_copy(data, (long unsigned int)size)’ leaks here; was allocated at [(20)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/19)
#  233|   	if (data_length > 0)
#  234|   	{
#  235|-> 		copy = calloc(data_length + 1, sizeof(BYTE));
#  236|   		if (!copy)
#  237|   			return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def178]
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:250:13: warning[-Wanalyzer-use-after-free]: use after ‘xf_clipboard_free’ of ‘clipboard’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2365:14: enter_function: entry to ‘xf_clipboard_new’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2377:41: acquire_memory: allocated here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2377:12: branch_false: following ‘false’ branch (when ‘clipboard’ is non-NULL)...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2383:27: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2595:9: release_memory: deallocated here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2595:9: call_function: calling ‘xf_clipboard_free’ from ‘xf_clipboard_new’
#  248|   {
#  249|   	WINPR_ASSERT(clipboard);
#  250|-> 	if (clipboard->serverFormats)
#  251|   	{
#  252|   		for (size_t i = 0; i < clipboard->numServerFormats; i++)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def179]
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:1323:20: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_cached_data_new(pDstData, (long unsigned int)DstSize)’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2124:1: enter_function: entry to ‘xf_cliprdr_server_format_data_response’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2152:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2160:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2160:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2164:9: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2250:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2252:20: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2252:20: branch_false: following ‘false’ branch (when ‘size != 0’)...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2261:43: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2284:12: branch_false: following ‘false’ branch (when ‘willQuit == 0’)...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2289:12: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2289:12: branch_true: following ‘true’ branch (when ‘pDstData’ is non-NULL)...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2291:31: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2291:31: call_function: calling ‘xf_cached_data_new’ from ‘xf_cliprdr_server_format_data_response’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2291:31: return_function: returning to ‘xf_cliprdr_server_format_data_response’ from ‘xf_cached_data_new’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2292:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2298:62: call_function: inlined call to ‘format_to_cache_slot’ from ‘xf_cliprdr_server_format_data_response’
# 1321|   		void* vptr;
# 1322|   	} cnv;
# 1323|-> 	cnv.uptr = 0x100000000ULL + format;
# 1324|   	return cnv.vptr;
# 1325|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def180]
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2318:80: warning[-Wanalyzer-malloc-leak]: leak of ‘xf_cached_data_new_copy(data, (long unsigned int)size)’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2124:1: enter_function: entry to ‘xf_cliprdr_server_format_data_response’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2152:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2160:14: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2160:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2164:9: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2284:12: branch_false: following ‘false’ branch (when ‘willQuit == 0’)...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2289:12: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2289:12: branch_false: following ‘false’ branch (when ‘pDstData’ is NULL)...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2313:49: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2313:49: call_function: calling ‘xf_cached_data_new_copy’ from ‘xf_cliprdr_server_format_data_response’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2313:49: return_function: returning to ‘xf_cliprdr_server_format_data_response’ from ‘xf_cached_data_new_copy’
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2314:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2318:80: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_cliprdr.c:2318:80: danger: ‘xf_cached_data_new_copy(data, (long unsigned int)size)’ leaks here; was allocated at [(18)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/17)
# 2316|   		else
# 2317|   		{
# 2318|-> 			if (!HashTable_Insert(clipboard->cachedRawData, (void*)(UINT_PTR)srcFormatId,
# 2319|   			                      cached_raw_data))
# 2320|   			{

Error: CPPCHECK_WARNING (CWE-476): [#def181]
FreeRDP-3.12.0/client/X11/xf_floatbar.c:275: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: button
#  273|   
#  274|   	button = (xfFloatbarButton*)calloc(1, sizeof(xfFloatbarButton));
#  275|-> 	button->type = type;
#  276|   
#  277|   	switch (type)

Error: GCC_ANALYZER_WARNING (CWE-476): [#def182]
FreeRDP-3.12.0/client/X11/xf_floatbar.c:275:9: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘button’
FreeRDP-3.12.0/client/X11/xf_floatbar.c:274:37: acquire_memory: this call could return NULL
FreeRDP-3.12.0/client/X11/xf_floatbar.c:275:9: danger: ‘button’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#  273|   
#  274|   	button = (xfFloatbarButton*)calloc(1, sizeof(xfFloatbarButton));
#  275|-> 	button->type = type;
#  276|   
#  277|   	switch (type)

Error: GCC_ANALYZER_WARNING (CWE-762): [#def183]
FreeRDP-3.12.0/client/X11/xf_floatbar.c:360:9: warning[-Wanalyzer-mismatching-deallocation]: ‘floatbar’ should have been deallocated with ‘free’ but was deallocated with ‘xf_floatbar_free’
FreeRDP-3.12.0/client/X11/xf_floatbar.c:321:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:324:12: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:324:12: branch_false: following ‘false’ branch (when ‘xfc’ is non-NULL)...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:328:13: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:328:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:331:45: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:331:45: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/client/X11/xf_floatbar.c:333:12: branch_false: following ‘false’ branch (when ‘floatbar’ is non-NULL)...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:336:27: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:338:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:339:17: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:360:9: danger: deallocated with ‘xf_floatbar_free’ here; allocation at [(7)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/6) expects deallocation with ‘free’
#  358|   	WINPR_PRAGMA_DIAG_PUSH
#  359|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  360|-> 	xf_floatbar_free(floatbar);
#  361|   	WINPR_PRAGMA_DIAG_POP
#  362|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def184]
FreeRDP-3.12.0/client/X11/xf_floatbar.c:905:14: warning[-Wanalyzer-use-after-free]: use after ‘xf_floatbar_free’ of ‘floatbar’
FreeRDP-3.12.0/client/X11/xf_floatbar.c:314:13: enter_function: entry to ‘xf_floatbar_new’
FreeRDP-3.12.0/client/X11/xf_floatbar.c:321:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:324:12: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:324:12: branch_false: following ‘false’ branch (when ‘xfc’ is non-NULL)...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:328:13: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:328:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:331:45: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:331:45: acquire_memory: allocated here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:333:12: branch_false: following ‘false’ branch (when ‘floatbar’ is non-NULL)...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:336:27: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:338:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/X11/xf_floatbar.c:339:17: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:360:9: release_memory: deallocated here
FreeRDP-3.12.0/client/X11/xf_floatbar.c:360:9: call_function: calling ‘xf_floatbar_free’ from ‘xf_floatbar_new’
#  903|   		return;
#  904|   
#  905|-> 	free(floatbar->title);
#  906|   	xfc = floatbar->xfc;
#  907|   	WINPR_ASSERT(xfc);

Error: COMPILER_WARNING (CWE-477): [#def185]
FreeRDP-3.12.0/client/X11/xf_keyboard.c: scope_hint: In function ‘xf_keyboard_init’
FreeRDP-3.12.0/client/X11/xf_keyboard.c:162:9: warning[-Wdeprecated-declarations]: ‘freerdp_keyboard_init_ex’ is deprecated: since 3.11.0, implement yourself in client
#  162 |         xfc->KeyboardLayout = freerdp_keyboard_init_ex(xfc->KeyboardLayout, NULL);
#      |         ^~~
FreeRDP-3.12.0/include/freerdp/locale/keyboard.h:269:44: note: declared here
#  269 |                          FREERDP_API DWORD freerdp_keyboard_init_ex(DWORD keyboardLayoutId,
#      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~
FreeRDP-3.12.0/winpr/include/winpr/platform.h:497:41: note: in definition of macro ‘WINPR_DEPRECATED_VAR’
#  497 | #define WINPR_DEPRECATED_VAR(text, obj) obj __attribute__((deprecated(text)))
#      |                                         ^~~
#  160|   	xf_keyboard_clear(xfc);
#  161|   	xfc->KeyboardLayout = freerdp_settings_get_uint32(settings, FreeRDP_KeyboardLayout);
#  162|-> 	xfc->KeyboardLayout = freerdp_keyboard_init_ex(xfc->KeyboardLayout, NULL);
#  163|   	if (!freerdp_settings_set_uint32(settings, FreeRDP_KeyboardLayout, xfc->KeyboardLayout))
#  164|   		return FALSE;

Error: COMPILER_WARNING (CWE-477): [#def186]
FreeRDP-3.12.0/client/X11/xf_keyboard.c:162:9: warning[-Wdeprecated-declarations]: ‘freerdp_keyboard_init_ex’ is deprecated: since 3.11.0, implement yourself in client
#  160|   	xf_keyboard_clear(xfc);
#  161|   	xfc->KeyboardLayout = freerdp_settings_get_uint32(settings, FreeRDP_KeyboardLayout);
#  162|-> 	xfc->KeyboardLayout = freerdp_keyboard_init_ex(xfc->KeyboardLayout, NULL);
#  163|   	if (!freerdp_settings_set_uint32(settings, FreeRDP_KeyboardLayout, xfc->KeyboardLayout))
#  164|   		return FALSE;

Error: COMPILER_WARNING (CWE-477): [#def187]
FreeRDP-3.12.0/client/X11/xf_keyboard.c: scope_hint: In function ‘xf_keyboard_release_all_keypress’
FreeRDP-3.12.0/client/X11/xf_keyboard.c:214:29: warning[-Wdeprecated-declarations]: ‘freerdp_keyboard_get_rdp_scancode_from_x11_keycode’ is deprecated: since 3.11.0, implement yourself in client
#  214 |                             freerdp_keyboard_get_rdp_scancode_from_x11_keycode((UINT32)keycode);
#      |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
FreeRDP-3.12.0/include/freerdp/locale/keyboard.h:274:30: note: declared here
#  274 |                              freerdp_keyboard_get_rdp_scancode_from_x11_keycode(DWORD keycode));
#      |                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
FreeRDP-3.12.0/winpr/include/winpr/platform.h:497:41: note: in definition of macro ‘WINPR_DEPRECATED_VAR’
#  497 | #define WINPR_DEPRECATED_VAR(text, obj) obj __attribute__((deprecated(text)))
#      |                                         ^~~
#  212|   		{
#  213|   			const DWORD rdp_scancode =
#  214|-> 			    freerdp_keyboard_get_rdp_scancode_from_x11_keycode((UINT32)keycode);
#  215|   
#  216|   			// release tab before releasing the windows key.

Error: COMPILER_WARNING (CWE-477): [#def188]
FreeRDP-3.12.0/client/X11/xf_keyboard.c:214:29: warning[-Wdeprecated-declarations]: ‘freerdp_keyboard_get_rdp_scancode_from_x11_keycode’ is deprecated: since 3.11.0, implement yourself in client
#  212|   		{
#  213|   			const DWORD rdp_scancode =
#  214|-> 			    freerdp_keyboard_get_rdp_scancode_from_x11_keycode((UINT32)keycode);
#  215|   
#  216|   			// release tab before releasing the windows key.

Error: COMPILER_WARNING (CWE-477): [#def189]
FreeRDP-3.12.0/client/X11/xf_keyboard.c: scope_hint: In function ‘xf_keyboard_send_key’
FreeRDP-3.12.0/client/X11/xf_keyboard.c:245:9: warning[-Wdeprecated-declarations]: ‘freerdp_keyboard_get_rdp_scancode_from_x11_keycode’ is deprecated: since 3.11.0, implement yourself in client
#  245 |         const DWORD sc = freerdp_keyboard_get_rdp_scancode_from_x11_keycode(event->keycode);
#      |         ^~~~~
FreeRDP-3.12.0/include/freerdp/locale/keyboard.h:274:30: note: declared here
#  274 |                              freerdp_keyboard_get_rdp_scancode_from_x11_keycode(DWORD keycode));
#      |                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
FreeRDP-3.12.0/winpr/include/winpr/platform.h:497:41: note: in definition of macro ‘WINPR_DEPRECATED_VAR’
#  497 | #define WINPR_DEPRECATED_VAR(text, obj) obj __attribute__((deprecated(text)))
#      |                                         ^~~
#  243|   	WINPR_ASSERT(input);
#  244|   
#  245|-> 	const DWORD sc = freerdp_keyboard_get_rdp_scancode_from_x11_keycode(event->keycode);
#  246|   	const DWORD rdp_scancode = freerdp_keyboard_remap_key(xfc->remap_table, sc);
#  247|   	if (rdp_scancode == RDP_SCANCODE_PAUSE && !xf_keyboard_key_pressed(xfc, XK_Control_L) &&

Error: COMPILER_WARNING (CWE-477): [#def190]
FreeRDP-3.12.0/client/X11/xf_keyboard.c:245:9: warning[-Wdeprecated-declarations]: ‘freerdp_keyboard_get_rdp_scancode_from_x11_keycode’ is deprecated: since 3.11.0, implement yourself in client
#  243|   	WINPR_ASSERT(input);
#  244|   
#  245|-> 	const DWORD sc = freerdp_keyboard_get_rdp_scancode_from_x11_keycode(event->keycode);
#  246|   	const DWORD rdp_scancode = freerdp_keyboard_remap_key(xfc->remap_table, sc);
#  247|   	if (rdp_scancode == RDP_SCANCODE_PAUSE && !xf_keyboard_key_pressed(xfc, XK_Control_L) &&

Error: CPPCHECK_WARNING (CWE-664): [#def191]
FreeRDP-3.12.0/client/X11/xf_utils.c:37: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   35|   static void write_log(wLog* log, DWORD level, const char* fname, const char* fkt, size_t line, ...)
#   36|   {
#   37|-> 	va_list ap = { 0 };
#   38|   	va_start(ap, line);
#   39|   	WLog_PrintMessageVA(log, WLOG_MESSAGE_TEXT, level, line, fname, fkt, ap);

Error: CPPCHECK_WARNING (CWE-758): [#def192]
FreeRDP-3.12.0/client/X11/xf_window.c:153: error[shiftTooManyBitsSigned]: Shifting signed 32-bit value by 31 bits is undefined behaviour
#  151|   	for (size_t x = 0; x < 32; x++)
#  152|   	{
#  153|-> 		const UINT32 val = 1 << x;
#  154|   		if ((style & val) != 0)
#  155|   		{

Error: GCC_ANALYZER_WARNING (CWE-686): [#def193]
FreeRDP-3.12.0/client/X11/xf_window.c:256:44: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘int’ but received ‘Atom’ {{aka ‘long unsigned int’}} for variadic argument 2 of ‘argp’
FreeRDP-3.12.0/client/X11/xf_window.c:1217:6: enter_function: entry to ‘xf_ShowWindow’
FreeRDP-3.12.0/client/X11/xf_window.c:1260:25: call_function: calling ‘xf_SendClientEvent’ from ‘xf_ShowWindow’ with 4 variadic arguments
#  254|   	for (size_t i = 0; i < numArgs; i++)
#  255|   	{
#  256|-> 		xevent.xclient.data.l[i] = va_arg(argp, int);
#  257|   	}
#  258|   

Error: GCC_ANALYZER_WARNING (CWE-686): [#def194]
FreeRDP-3.12.0/client/X11/xf_window.c:256:44: warning[-Wanalyzer-va-arg-type-mismatch]: ‘va_arg’ expected ‘int’ but received ‘long unsigned int’ for variadic argument 2 of ‘argp’
FreeRDP-3.12.0/client/X11/xf_window.c:1217:6: enter_function: entry to ‘xf_ShowWindow’
FreeRDP-3.12.0/client/X11/xf_window.c:1237:25: call_function: calling ‘xf_SendClientEvent’ from ‘xf_ShowWindow’ with 4 variadic arguments
#  254|   	for (size_t i = 0; i < numArgs; i++)
#  255|   	{
#  256|-> 		xevent.xclient.data.l[i] = va_arg(argp, int);
#  257|   	}
#  258|   

Error: CPPCHECK_WARNING (CWE-476): [#def195]
FreeRDP-3.12.0/client/X11/xf_window.c:1299: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: xrects
# 1297|   	for (int i = 0; i < nrects; i++)
# 1298|   	{
# 1299|-> 		xrects[i].x = WINPR_ASSERTING_INT_CAST(short, rects[i].left);
# 1300|   		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1301|   		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def196]
FreeRDP-3.12.0/client/X11/xf_window.c:1299:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘xrects’
FreeRDP-3.12.0/client/X11/xf_window.c:1291:12: branch_false: following ‘false’ branch (when ‘nrects > 0’)...
FreeRDP-3.12.0/client/X11/xf_window.c:1295:31: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_window.c:1295:31: acquire_memory: this call could return NULL
FreeRDP-3.12.0/client/X11/xf_window.c:1297:25: branch_true: following ‘true’ branch (when ‘i < nrects’)...
FreeRDP-3.12.0/client/X11/xf_window.c:1299:31: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_window.c:1299:17: danger: ‘xrects + (long unsigned int)i * 8’ could be NULL: unchecked value from [(3)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/2)
# 1297|   	for (int i = 0; i < nrects; i++)
# 1298|   	{
# 1299|-> 		xrects[i].x = WINPR_ASSERTING_INT_CAST(short, rects[i].left);
# 1300|   		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1301|   		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);

Error: CPPCHECK_WARNING (CWE-476): [#def197]
FreeRDP-3.12.0/client/X11/xf_window.c:1300: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: xrects
# 1298|   	{
# 1299|   		xrects[i].x = WINPR_ASSERTING_INT_CAST(short, rects[i].left);
# 1300|-> 		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1301|   		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);
# 1302|   		xrects[i].height = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].bottom - rects[i].top);

Error: CPPCHECK_WARNING (CWE-476): [#def198]
FreeRDP-3.12.0/client/X11/xf_window.c:1301: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: xrects
# 1299|   		xrects[i].x = WINPR_ASSERTING_INT_CAST(short, rects[i].left);
# 1300|   		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1301|-> 		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);
# 1302|   		xrects[i].height = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].bottom - rects[i].top);
# 1303|   	}

Error: CPPCHECK_WARNING (CWE-476): [#def199]
FreeRDP-3.12.0/client/X11/xf_window.c:1302: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: xrects
# 1300|   		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1301|   		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);
# 1302|-> 		xrects[i].height = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].bottom - rects[i].top);
# 1303|   	}
# 1304|   

Error: CPPCHECK_WARNING (CWE-476): [#def200]
FreeRDP-3.12.0/client/X11/xf_window.c:1324: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: xrects
# 1322|   	for (int i = 0; i < nrects; i++)
# 1323|   	{
# 1324|-> 		xrects[i].x = WINPR_ASSERTING_INT_CAST(short, rects[i].left);
# 1325|   		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1326|   		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def201]
FreeRDP-3.12.0/client/X11/xf_window.c:1324:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘xrects’
FreeRDP-3.12.0/client/X11/xf_window.c:1316:12: branch_false: following ‘false’ branch (when ‘nrects > 0’)...
FreeRDP-3.12.0/client/X11/xf_window.c:1320:31: branch_false: ...to here
FreeRDP-3.12.0/client/X11/xf_window.c:1320:31: acquire_memory: this call could return NULL
FreeRDP-3.12.0/client/X11/xf_window.c:1322:25: branch_true: following ‘true’ branch (when ‘i < nrects’)...
FreeRDP-3.12.0/client/X11/xf_window.c:1324:31: branch_true: ...to here
FreeRDP-3.12.0/client/X11/xf_window.c:1324:17: danger: ‘xrects + (long unsigned int)i * 8’ could be NULL: unchecked value from [(3)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/2)
# 1322|   	for (int i = 0; i < nrects; i++)
# 1323|   	{
# 1324|-> 		xrects[i].x = WINPR_ASSERTING_INT_CAST(short, rects[i].left);
# 1325|   		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1326|   		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);

Error: CPPCHECK_WARNING (CWE-476): [#def202]
FreeRDP-3.12.0/client/X11/xf_window.c:1325: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: xrects
# 1323|   	{
# 1324|   		xrects[i].x = WINPR_ASSERTING_INT_CAST(short, rects[i].left);
# 1325|-> 		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1326|   		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);
# 1327|   		xrects[i].height = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].bottom - rects[i].top);

Error: CPPCHECK_WARNING (CWE-476): [#def203]
FreeRDP-3.12.0/client/X11/xf_window.c:1326: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: xrects
# 1324|   		xrects[i].x = WINPR_ASSERTING_INT_CAST(short, rects[i].left);
# 1325|   		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1326|-> 		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);
# 1327|   		xrects[i].height = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].bottom - rects[i].top);
# 1328|   	}

Error: CPPCHECK_WARNING (CWE-476): [#def204]
FreeRDP-3.12.0/client/X11/xf_window.c:1327: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: xrects
# 1325|   		xrects[i].y = WINPR_ASSERTING_INT_CAST(short, rects[i].top);
# 1326|   		xrects[i].width = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].right - rects[i].left);
# 1327|-> 		xrects[i].height = WINPR_ASSERTING_INT_CAST(unsigned short, rects[i].bottom - rects[i].top);
# 1328|   	}
# 1329|   

Error: CPPCHECK_WARNING (CWE-664): [#def205]
FreeRDP-3.12.0/client/common/client.c:1175: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1173|   				          ", ignoring",
# 1174|   				          count);
# 1175|-> 			va_list ap = { 0 };
# 1176|   			va_start(ap, count);
# 1177|   			const char* scope = va_arg(ap, const char*);

Error: CPPCHECK_WARNING (CWE-664): [#def206]
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:629: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  627|   		return;
#  628|   
#  629|-> 	va_list ap = { 0 };
#  630|   	va_start(ap, line);
#  631|   	WLog_PrintMessageVA(log, WLOG_MESSAGE_TEXT, level, line, fname, fkt, ap);

Error: GCC_ANALYZER_WARNING (CWE-416): [#def207]
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2067:13: warning[-Wanalyzer-use-after-free]: use after ‘cliprdr_file_context_free’ of ‘file’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2393:21: enter_function: entry to ‘cliprdr_file_context_new’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2395:36: acquire_memory: allocated here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2396:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2399:21: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2461:9: release_memory: deallocated here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2461:9: call_function: calling ‘cliprdr_file_context_free’ from ‘cliprdr_file_context_new’
# 2065|   
# 2066|   #if defined(WITH_FUSE)
# 2067|-> 	if (file->inode_table)
# 2068|   	{
# 2069|   		clear_no_cdi_entry(file);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def208]
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2158:32: warning[-Wanalyzer-malloc-leak]: leak of ‘cliprdr_local_stream_new(file,  lockId,  data,  size)’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2493:6: enter_function: entry to ‘cliprdr_file_context_update_client_data’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2499:14: call_function: inlined call to ‘cliprdr_file_client_content_changed_and_update’ from ‘cliprdr_file_context_update_client_data’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2499:14: call_function: inlined call to ‘cliprdr_file_client_content_changed_and_update’ from ‘cliprdr_file_context_update_client_data’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2499:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2502:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2502:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2505:25: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2511:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2515:26: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2515:26: call_function: calling ‘cliprdr_local_stream_new’ from ‘cliprdr_file_context_update_client_data’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2515:26: return_function: returning to ‘cliprdr_file_context_update_client_data’ from ‘cliprdr_local_stream_new’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2158:32: danger: ‘cliprdr_local_stream_new(file,  lockId,  data,  size)’ leaks here; was allocated at [(19)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/18)
# 2156|   	WINPR_ASSERT(stream);
# 2157|   
# 2158|-> 	for (size_t x = 0; x < stream->count; x++)
# 2159|   		cliprdr_local_file_free(&stream->files[x]);
# 2160|   	free(stream->files);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def209]
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2196:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileW(ConvertUtf8ToWCharAlloc(path, 0), 0, 4, 0, 3, 128, 0)’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2265:13: enter_function: entry to ‘cliprdr_local_stream_update’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2275:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2278:22: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2279:12: branch_false: following ‘false’ branch (when ‘copy’ is non-NULL)...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2282:15: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2284:16: branch_true: following ‘true’ branch (when ‘ptr’ is non-NULL)...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2287:21: branch_true: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2292:22: call_function: calling ‘append_entry’ from ‘cliprdr_local_stream_update’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2292:22: return_function: returning to ‘cliprdr_local_stream_update’ from ‘append_entry’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2292:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2295:21: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2295:21: call_function: calling ‘is_directory’ from ‘cliprdr_local_stream_update’
# 2194|   	free(wpath);
# 2195|   
# 2196|-> 	if (hFile == INVALID_HANDLE_VALUE)
# 2197|   		return FALSE;
# 2198|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def210]
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2222:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileW(ConvertUtf8ToWCharAlloc(GetCombinedPath(path, "*"), 0), &FindFileData)’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2265:13: enter_function: entry to ‘cliprdr_local_stream_update’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2275:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2278:22: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2279:12: branch_false: following ‘false’ branch (when ‘copy’ is non-NULL)...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2282:15: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2284:16: branch_true: following ‘true’ branch (when ‘ptr’ is non-NULL)...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2287:21: branch_true: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2292:22: call_function: calling ‘append_entry’ from ‘cliprdr_local_stream_update’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2292:22: return_function: returning to ‘cliprdr_local_stream_update’ from ‘append_entry’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2292:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2295:21: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2295:21: call_function: calling ‘is_directory’ from ‘cliprdr_local_stream_update’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2295:21: return_function: returning to ‘cliprdr_local_stream_update’ from ‘is_directory’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2295:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2297:42: branch_true: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2297:42: call_function: calling ‘add_directory’ from ‘cliprdr_local_stream_update’
# 2220|   	free(wpath);
# 2221|   
# 2222|-> 	if (hFind == INVALID_HANDLE_VALUE)
# 2223|   		return FALSE;
# 2224|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def211]
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2461:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2396:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2399:21: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2403:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2406:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2406:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2409:26: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2421:33: acquire_memory: allocated here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2423:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2424:17: branch_true: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2461:9: danger: ‘<unknown>’ leaks here; was allocated at [(7)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/6)
# 2459|   	WINPR_PRAGMA_DIAG_PUSH
# 2460|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2461|-> 	cliprdr_file_context_free(file);
# 2462|   	WINPR_PRAGMA_DIAG_POP
# 2463|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def212]
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2461:9: warning[-Wanalyzer-mismatching-deallocation]: ‘file’ should have been deallocated with ‘free’ but was deallocated with ‘cliprdr_file_context_free’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2395:36: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2396:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2399:21: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2403:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2404:17: branch_true: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2461:9: danger: deallocated with ‘cliprdr_file_context_free’ here; allocation at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 2459|   	WINPR_PRAGMA_DIAG_PUSH
# 2460|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2461|-> 	cliprdr_file_context_free(file);
# 2462|   	WINPR_PRAGMA_DIAG_POP
# 2463|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def213]
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2516:60: warning[-Wanalyzer-malloc-leak]: leak of ‘cliprdr_local_stream_new(file,  lockId,  data,  size)’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2493:6: enter_function: entry to ‘cliprdr_file_context_update_client_data’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2499:14: call_function: inlined call to ‘cliprdr_file_client_content_changed_and_update’ from ‘cliprdr_file_context_update_client_data’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2499:14: call_function: inlined call to ‘cliprdr_file_client_content_changed_and_update’ from ‘cliprdr_file_context_update_client_data’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2499:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2502:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2502:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2505:25: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2511:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2515:26: branch_false: ...to here
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2515:26: call_function: calling ‘cliprdr_local_stream_new’ from ‘cliprdr_file_context_update_client_data’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2515:26: return_function: returning to ‘cliprdr_file_context_update_client_data’ from ‘cliprdr_local_stream_new’
FreeRDP-3.12.0/client/common/client_cliprdr_file.c:2516:60: danger: ‘cliprdr_local_stream_new(file,  lockId,  data,  size)’ leaks here; was allocated at [(19)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/18)
# 2514|   	{
# 2515|   		stream = cliprdr_local_stream_new(file, lockId, data, size);
# 2516|-> 		rc = HashTable_Insert(file->local_streams, &stream->lockId, stream);
# 2517|   		if (!rc)
# 2518|   			cliprdr_local_stream_free(stream);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def214]
FreeRDP-3.12.0/client/common/cmdline.c:5622:12: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/client/common/cmdline.c:5764:5: enter_function: entry to ‘freerdp_client_settings_parse_command_line_arguments_ex’
FreeRDP-3.12.0/client/common/cmdline.c:5774:12: branch_true: following ‘true’ branch (when ‘oargc == 2’)...
FreeRDP-3.12.0/client/common/cmdline.c:5774:28: branch_true: ...to here
FreeRDP-3.12.0/client/common/cmdline.c:5774:28: call_function: calling ‘option_starts_with’ from ‘freerdp_client_settings_parse_command_line_arguments_ex’
FreeRDP-3.12.0/client/common/cmdline.c:5774:28: return_function: returning to ‘freerdp_client_settings_parse_command_line_arguments_ex’ from ‘option_starts_with’
FreeRDP-3.12.0/client/common/cmdline.c:5774:13: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/cmdline.c:5777:36: branch_true: ...to here
FreeRDP-3.12.0/client/common/cmdline.c:5780:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/cmdline.c:5789:26: branch_false: ...to here
FreeRDP-3.12.0/client/common/cmdline.c:5789:25: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/cmdline.c:5794:26: branch_false: ...to here
FreeRDP-3.12.0/client/common/cmdline.c:5794:25: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/client/common/cmdline.c:5800:35: branch_false: ...to here
FreeRDP-3.12.0/client/common/cmdline.c:5800:35: call_function: calling ‘args_from_fp’ from ‘freerdp_client_settings_parse_command_line_arguments_ex’
# 5620|   	int nargc = *pargc + 1;
# 5621|   	char** tmp = (char**)realloc((void*)*pargv, (size_t)nargc * sizeof(char*));
# 5622|-> 	if (!tmp)
# 5623|   		return FALSE;
# 5624|   

Error: CPPCHECK_WARNING (CWE-664): [#def215]
FreeRDP-3.12.0/client/common/file.c:1443: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1441|                                                         WINPR_FORMAT_ARG const char* fmt, ...)
# 1442|   {
# 1443|-> 	va_list ap = { 0 };
# 1444|   	SSIZE_T len = 0;
# 1445|   	char* buf = NULL;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def216]
FreeRDP-3.12.0/client/common/file.c:1716:29: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘CommandLineParseCommaSeparatedValues(values, & count) + x * 8’
FreeRDP-3.12.0/client/common/file.c:1707:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/file.c:1709:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/file.c:1709:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/file.c:1712:13: branch_false: ...to here
FreeRDP-3.12.0/client/common/file.c:1712:13: acquire_memory: this call could return NULL
FreeRDP-3.12.0/client/common/file.c:1713:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/file.c:1716:36: branch_true: ...to here
FreeRDP-3.12.0/client/common/file.c:1716:29: danger: ‘CommandLineParseCommaSeparatedValues(values, & count) + x * 8’ could be NULL: unchecked value from [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
# 1714|   	{
# 1715|   		BOOL rc = 0;
# 1716|-> 		const char* val = p[x];
# 1717|   		const size_t len = strlen(val) + 8;
# 1718|   		char* str = calloc(len, sizeof(char));

Error: GCC_ANALYZER_WARNING (CWE-476): [#def217]
FreeRDP-3.12.0/client/common/file.c:2528:31: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘CommandLineParseCommaSeparatedValues(*file.SelectedMonitors, & count) + x * 8’
FreeRDP-3.12.0/client/common/file.c:1741:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/file.c:1744:23: branch_false: ...to here
FreeRDP-3.12.0/client/common/file.c:2507:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/file.c:2509:24: branch_true: ...to here
FreeRDP-3.12.0/client/common/file.c:2510:30: acquire_memory: this call could return NULL
FreeRDP-3.12.0/client/common/file.c:2513:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/file.c:2518:24: branch_false: ...to here
FreeRDP-3.12.0/client/common/file.c:2519:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/client/common/file.c:2524:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/file.c:2527:25: branch_true: ...to here
FreeRDP-3.12.0/client/common/file.c:2528:31: danger: ‘CommandLineParseCommaSeparatedValues(*file.SelectedMonitors, & count) + x * 8’ could be NULL: unchecked value from [(5)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/4)
# 2526|   			unsigned long val = 0;
# 2527|   			errno = 0;
# 2528|-> 			val = strtoul(ptr[x], NULL, 0);
# 2529|   			if ((val >= UINT32_MAX) && (errno != 0))
# 2530|   			{

Error: GCC_ANALYZER_WARNING (CWE-401): [#def218]
FreeRDP-3.12.0/client/common/file.c:2714:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_client_rdp_file_new_ex(0)’
FreeRDP-3.12.0/client/common/file.c:2705:10: enter_function: entry to ‘freerdp_client_rdp_file_new’
FreeRDP-3.12.0/client/common/file.c:2707:16: acquire_memory: allocated here
FreeRDP-3.12.0/client/common/file.c:2707:16: call_function: calling ‘freerdp_client_rdp_file_new_ex’ from ‘freerdp_client_rdp_file_new’
# 2712|   	rdpFile* file = (rdpFile*)calloc(1, sizeof(rdpFile));
# 2713|   
# 2714|-> 	if (!file)
# 2715|   		return NULL;
# 2716|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def219]
FreeRDP-3.12.0/client/common/file.c:2730:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_client_rdp_file_new_ex(0)’
FreeRDP-3.12.0/client/common/file.c:2705:10: enter_function: entry to ‘freerdp_client_rdp_file_new’
FreeRDP-3.12.0/client/common/file.c:2707:16: acquire_memory: allocated here
FreeRDP-3.12.0/client/common/file.c:2707:16: call_function: calling ‘freerdp_client_rdp_file_new_ex’ from ‘freerdp_client_rdp_file_new’
# 2728|   		goto fail;
# 2729|   
# 2730|-> 	if (!freerdp_client_add_option(file, "freerdp"))
# 2731|   		goto fail;
# 2732|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def220]
FreeRDP-3.12.0/client/common/file.c:2737:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/client/common/file.c:2714:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/client/common/file.c:2719:9: branch_false: ...to here
FreeRDP-3.12.0/client/common/file.c:2726:22: acquire_memory: allocated here
FreeRDP-3.12.0/client/common/file.c:2727:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/file.c:2728:17: branch_true: ...to here
FreeRDP-3.12.0/client/common/file.c:2737:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/2)
# 2735|   	WINPR_PRAGMA_DIAG_PUSH
# 2736|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2737|-> 	freerdp_client_rdp_file_free(file);
# 2738|   	WINPR_PRAGMA_DIAG_POP
# 2739|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def221]
FreeRDP-3.12.0/client/common/file.c:2737:9: warning[-Wanalyzer-mismatching-deallocation]: ‘file’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_client_rdp_file_free’
FreeRDP-3.12.0/client/common/file.c:2712:35: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/client/common/file.c:2714:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/client/common/file.c:2719:9: branch_false: ...to here
FreeRDP-3.12.0/client/common/file.c:2727:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/file.c:2728:17: branch_true: ...to here
FreeRDP-3.12.0/client/common/file.c:2737:9: danger: deallocated with ‘freerdp_client_rdp_file_free’ here; allocation at [(1)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 2735|   	WINPR_PRAGMA_DIAG_PUSH
# 2736|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2737|-> 	freerdp_client_rdp_file_free(file);
# 2738|   	WINPR_PRAGMA_DIAG_POP
# 2739|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def222]
FreeRDP-3.12.0/client/common/file.c:2745:21: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_client_rdp_file_free’ of ‘file’
FreeRDP-3.12.0/client/common/file.c:2710:10: enter_function: entry to ‘freerdp_client_rdp_file_new_ex’
FreeRDP-3.12.0/client/common/file.c:2712:35: acquire_memory: allocated here
FreeRDP-3.12.0/client/common/file.c:2714:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/client/common/file.c:2719:9: branch_false: ...to here
FreeRDP-3.12.0/client/common/file.c:2737:9: release_memory: deallocated here
FreeRDP-3.12.0/client/common/file.c:2737:9: call_function: calling ‘freerdp_client_rdp_file_free’ from ‘freerdp_client_rdp_file_new_ex’
# 2743|   	if (file)
# 2744|   	{
# 2745|-> 		if (file->lineCount)
# 2746|   		{
# 2747|   			for (size_t i = 0; i < file->lineCount; i++)

Error: COMPILER_WARNING (CWE-704): [#def223]
FreeRDP-3.12.0/client/common/test/TestClientCmdLine.c:247:56: warning[-Wdiscarded-qualifiers]: passing argument 1 of ‘string_list_copy’ discards ‘const’ qualifier from pointer target type
#  245|   		const test* current = &tests[i];
#  246|   		int failure = 0;
#  247|-> 		char** command_line = string_list_copy(current->command_line);
#  248|   
#  249|   		if (!testcase(__func__, command_line, string_list_length((const char* const*)command_line),

Error: COMPILER_WARNING (CWE-704): [#def224]
FreeRDP-3.12.0/client/common/test/TestClientCmdLine.c:249:74: warning[-Wdiscarded-qualifiers]: passing argument 1 of ‘string_list_length’ discards ‘const’ qualifier from pointer target type
#  247|   		char** command_line = string_list_copy(current->command_line);
#  248|   
#  249|-> 		if (!testcase(__func__, command_line, string_list_length((const char* const*)command_line),
#  250|   		              current->expected_status, current->validate_settings))
#  251|   		{

Error: COMPILER_WARNING (CWE-704): [#def225]
FreeRDP-3.12.0/client/common/test/TestClientCmdLine.c:260:51: warning[-Wdiscarded-qualifiers]: passing argument 2 of ‘string_list_print’ discards ‘const’ qualifier from pointer target type
#  258|   		if (failure)
#  259|   		{
#  260|-> 			string_list_print(stdout, (const char* const*)command_line);
#  261|   			rc = -1;
#  262|   		}

Error: CPPCHECK_WARNING (CWE-664): [#def226]
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:242: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  240|   	int rc = 0;
#  241|   	char* dst = NULL;
#  242|-> 	va_list ap = { 0 };
#  243|   
#  244|   	va_start(ap, fmt);

Error: GCC_ANALYZER_WARNING (CWE-415): [#def227]
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:599:9: warning[-Wanalyzer-double-free]: double-‘freerdp_client_rdp_file_free’ of ‘file’
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:287:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:293:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:293:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:296:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:296:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:299:13: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:299:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:306:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:306:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:322:13: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:322:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:331:13: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:331:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:340:9: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:343:16: acquire_memory: allocated here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:345:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:351:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:351:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:355:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:355:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:358:13: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:358:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:365:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:365:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:381:13: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:381:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:390:13: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:390:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:399:18: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:400:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:405:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:405:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:410:18: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:411:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:416:20: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:416:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:467:36: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:468:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:473:21: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:473:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:479:33: branch_true: following ‘true’ branch (when ‘x != 4’)...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:481:29: branch_true: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:481:28: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:479:49: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:492:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:497:34: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:498:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:503:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:503:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:512:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:517:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:517:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:522:14: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:522:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:528:18: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:529:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:532:13: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:532:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:538:18: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:539:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:542:20: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:544:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:547:20: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:550:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:553:9: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:555:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:561:9: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:561:9: release_memory: first ‘freerdp_client_rdp_file_free’ here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:564:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:565:17: branch_true: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:591:12: branch_false: following ‘false’ branch (when ‘uniname’ is NULL)...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:593:12: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:593:12: branch_false: following ‘false’ branch (when ‘base’ is NULL)...
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:595:9: branch_false: ...to here
FreeRDP-3.12.0/client/common/test/TestClientRdpFile.c:599:9: danger: second ‘freerdp_client_rdp_file_free’ here; first ‘freerdp_client_rdp_file_free’ was at [(71)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/70)
#  597|   	free(base);
#  598|   	free(tmp);
#  599|-> 	freerdp_client_rdp_file_free(file);
#  600|   	freerdp_settings_free(settings);
#  601|   	return rc;

Error: COMPILER_WARNING (CWE-477): [#def228]
FreeRDP-3.12.0/include/freerdp/client/rdpgfx.h:28: included_from: Included from here.
FreeRDP-3.12.0/include/freerdp/gdi/gdi.h:35: included_from: Included from here.
FreeRDP-3.12.0/include/freerdp/freerdp.h:35: included_from: Included from here.
FreeRDP-3.12.0/libfreerdp/codec/bulk.h:26: included_from: Included from here.
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:26: included_from: Included from here.
FreeRDP-3.12.0/include/freerdp/codecs.h:92:9: warning[-Wdeprecated-declarations]: ‘codecs_free’ is deprecated: [since 3.6.0] Use freerdp_client_codecs_free
#   92 |         WINPR_DEPRECATED_VAR("[since 3.6.0] Use freerdp_client_codecs_new",
#      |         ^~~~~~~~~~~~~~~~~~~~
FreeRDP-3.12.0/winpr/include/winpr/winpr.h:22: included_from: Included from here.
FreeRDP-3.12.0/winpr/include/winpr/assert.h:27: included_from: Included from here.
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:21: included_from: Included from here.
FreeRDP-3.12.0/include/freerdp/codecs.h:90:47: note: declared here
#   90 |                              FREERDP_API void codecs_free(rdpCodecs* codecs));
#      |                                               ^~~~~~~~~~~
FreeRDP-3.12.0/winpr/include/winpr/platform.h:497:41: note: in definition of macro ‘WINPR_DEPRECATED_VAR’
#  497 | #define WINPR_DEPRECATED_VAR(text, obj) obj __attribute__((deprecated(text)))
#      |                                         ^~~
#   90|   	                     FREERDP_API void codecs_free(rdpCodecs* codecs));
#   91|   
#   92|-> 	WINPR_DEPRECATED_VAR("[since 3.6.0] Use freerdp_client_codecs_new",
#   93|   	                     WINPR_ATTR_MALLOC(codecs_free, 1)
#   94|   	                         FREERDP_API rdpCodecs* codecs_new(rdpContext* context));

Error: COMPILER_WARNING (CWE-477): [#def229]
FreeRDP-3.12.0/include/freerdp/codecs.h:92:9: warning[-Wdeprecated-declarations]: ‘codecs_free’ is deprecated: [since 3.6.0] Use freerdp_client_codecs_free
#   90|   	                     FREERDP_API void codecs_free(rdpCodecs* codecs));
#   91|   
#   92|-> 	WINPR_DEPRECATED_VAR("[since 3.6.0] Use freerdp_client_codecs_new",
#   93|   	                     WINPR_ATTR_MALLOC(codecs_free, 1)
#   94|   	                         FREERDP_API rdpCodecs* codecs_new(rdpContext* context));

Error: GCC_ANALYZER_WARNING (CWE-126): [#def230]
FreeRDP-3.12.0/include/freerdp/utils/pod_arrays.h:131:9: warning[-Wanalyzer-out-of-bounds]: heap-based buffer over-read
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:62:5: enter_function: entry to ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:76:28: branch_true: following ‘true’ branch (when ‘i != 10’)...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: call_function: calling ‘array_uint32_append’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: return_function: returning to ‘TestPodArrays’ from ‘array_uint32_append’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:76:36: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:76:28: branch_true: following ‘true’ branch (when ‘i != 10’)...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: call_function: calling ‘array_uint32_append’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: return_function: returning to ‘TestPodArrays’ from ‘array_uint32_append’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:76:36: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:81:14: call_function: calling ‘array_uint32_foreach’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:81:14: return_function: returning to ‘TestPodArrays’ from ‘array_uint32_foreach’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:81:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:84:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:84:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:87:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:88:13: call_function: calling ‘array_uint32_foreach’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:88:13: return_function: returning to ‘TestPodArrays’ from ‘array_uint32_foreach’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:88:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:91:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:91:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:94:13: call_function: inlined call to ‘array_uint32_get’ from ‘TestPodArrays’
#  129|   
#  130|   	POD_ARRAYS_IMPL(UINT16, uint16)
#  131|-> 	POD_ARRAYS_IMPL(UINT32, uint32)
#  132|   	POD_ARRAYS_IMPL(UINT64, uint64)
#  133|   

Error: GCC_ANALYZER_WARNING (CWE-122): [#def231]
FreeRDP-3.12.0/include/freerdp/utils/pod_arrays.h:131:9: warning[-Wanalyzer-out-of-bounds]: heap-based buffer overflow
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:62:5: enter_function: entry to ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:76:28: branch_true: following ‘true’ branch (when ‘i != 10’)...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: call_function: calling ‘array_uint32_append’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: return_function: returning to ‘TestPodArrays’ from ‘array_uint32_append’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:76:36: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:76:28: branch_true: following ‘true’ branch (when ‘i != 10’)...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: call_function: calling ‘array_uint32_append’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:22: return_function: returning to ‘TestPodArrays’ from ‘array_uint32_append’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:77:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:76:36: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:81:14: call_function: calling ‘array_uint32_foreach’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:81:14: return_function: returning to ‘TestPodArrays’ from ‘array_uint32_foreach’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:81:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:84:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:84:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:87:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:88:13: call_function: calling ‘array_uint32_foreach’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:88:13: return_function: returning to ‘TestPodArrays’ from ‘array_uint32_foreach’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:88:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:91:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:91:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:94:13: call_function: inlined call to ‘array_uint32_get’ from ‘TestPodArrays’
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:94:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestPodArrays.c:97:9: call_function: inlined call to ‘array_uint32_set’ from ‘TestPodArrays’
#  129|   
#  130|   	POD_ARRAYS_IMPL(UINT16, uint16)
#  131|-> 	POD_ARRAYS_IMPL(UINT32, uint32)
#  132|   	POD_ARRAYS_IMPL(UINT64, uint64)
#  133|   

Error: GCC_ANALYZER_WARNING (CWE-416): [#def232]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:292:21: warning[-Wanalyzer-use-after-free]: use after ‘bitmap_cache_free’ of ‘bitmapCache’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:358:17: enter_function: entry to ‘bitmap_cache_new’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:368:40: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:370:12: branch_false: following ‘false’ branch (when ‘bitmapCache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:374:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:378:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:379:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:400:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:400:9: call_function: calling ‘bitmap_cache_free’ from ‘bitmap_cache_new’
#  290|   static int bitmap_cache_save_persistent(rdpBitmapCache* bitmapCache)
#  291|   {
#  292|-> 	rdpContext* context = bitmapCache->context;
#  293|   	rdpSettings* settings = context->settings;
#  294|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def233]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:400:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:370:12: branch_false: following ‘false’ branch (when ‘bitmapCache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:374:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:376:47: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:378:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:380:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:382:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:385:21: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:391:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:393:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:382:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:385:21: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:391:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:392:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:400:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/2)
#  398|   	WINPR_PRAGMA_DIAG_PUSH
#  399|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  400|-> 	bitmap_cache_free(bitmapCache);
#  401|   	WINPR_PRAGMA_DIAG_POP
#  402|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def234]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:400:9: warning[-Wanalyzer-mismatching-deallocation]: ‘bitmapCache’ should have been deallocated with ‘free’ but was deallocated with ‘bitmap_cache_free’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:368:40: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:370:12: branch_false: following ‘false’ branch (when ‘bitmapCache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:374:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:378:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:379:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:400:9: danger: deallocated with ‘bitmap_cache_free’ here; allocation at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  398|   	WINPR_PRAGMA_DIAG_PUSH
#  399|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  400|-> 	bitmap_cache_free(bitmapCache);
#  401|   	WINPR_PRAGMA_DIAG_POP
#  402|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def235]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:484:47: warning[-Wanalyzer-use-after-free]: use after ‘free_bitmap_update’ of ‘pointer’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:488:16: enter_function: entry to ‘copy_bitmap_update’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:490:30: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:492:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:493:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:505:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:505:9: call_function: calling ‘free_bitmap_update’ from ‘copy_bitmap_update’
#  482|   		return;
#  483|   
#  484|-> 	free_bitmap_data(pointer->rectangles, pointer->number);
#  485|   	free(pointer);
#  486|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def236]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:505:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_bitmap_update’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:490:30: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:492:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:493:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:505:9: danger: deallocated with ‘free_bitmap_update’ here; allocation at [(1)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  503|   	WINPR_PRAGMA_DIAG_PUSH
#  504|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  505|-> 	free_bitmap_update(context, dst);
#  506|   	WINPR_PRAGMA_DIAG_POP
#  507|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def237]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:533:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_bitmap_order’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:512:35: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:514:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:515:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:533:9: danger: deallocated with ‘free_cache_bitmap_order’ here; allocation at [(1)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  531|   	WINPR_PRAGMA_DIAG_PUSH
#  532|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  533|-> 	free_cache_bitmap_order(context, dst);
#  534|   	WINPR_PRAGMA_DIAG_POP
#  535|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def238]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:541:22: warning[-Wanalyzer-use-after-free]: use after ‘free_cache_bitmap_order’ of ‘order’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:510:21: enter_function: entry to ‘copy_cache_bitmap_order’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:512:35: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:514:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:515:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:533:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:533:9: call_function: calling ‘free_cache_bitmap_order’ from ‘copy_cache_bitmap_order’
#  539|   {
#  540|   	if (order)
#  541|-> 		free(order->bitmapDataStream);
#  542|   
#  543|   	free(order);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def239]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:570:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_bitmap_v2_order’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:549:38: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:551:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:552:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:570:9: danger: deallocated with ‘free_cache_bitmap_v2_order’ here; allocation at [(1)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  568|   	WINPR_PRAGMA_DIAG_PUSH
#  569|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  570|-> 	free_cache_bitmap_v2_order(context, dst);
#  571|   	WINPR_PRAGMA_DIAG_POP
#  572|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def240]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:579:22: warning[-Wanalyzer-use-after-free]: use after ‘free_cache_bitmap_v2_order’ of ‘order’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:546:24: enter_function: entry to ‘copy_cache_bitmap_v2_order’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:549:38: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:551:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:552:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:570:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:570:9: call_function: calling ‘free_cache_bitmap_v2_order’ from ‘copy_cache_bitmap_v2_order’
#  577|   {
#  578|   	if (order)
#  579|-> 		free(order->bitmapDataStream);
#  580|   
#  581|   	free(order);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def241]
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:608:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_bitmap_v3_order’
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:587:38: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:589:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:590:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/bitmap.c:608:9: danger: deallocated with ‘free_cache_bitmap_v3_order’ here; allocation at [(1)](sarif:/runs/0/results/13/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  606|   	WINPR_PRAGMA_DIAG_PUSH
#  607|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  608|-> 	free_cache_bitmap_v3_order(context, dst);
#  609|   	WINPR_PRAGMA_DIAG_POP
#  610|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def242]
FreeRDP-3.12.0/libfreerdp/cache/brush.c:80:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘((const rdpCache)**context.cache).brush’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:59:13: enter_function: entry to ‘update_gdi_patblt’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:73:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/brush.c:75:31: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:75:31: call_function: calling ‘brush_cache_get’ from ‘update_gdi_patblt’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:75:31: return_function: returning to ‘update_gdi_patblt’ from ‘brush_cache_get’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:80:9: danger: dereference of NULL ‘*cache.brush’
#   78|   
#   79|   	WINPR_ASSERT(cache->brush);
#   80|-> 	IFCALLRET(cache->brush->PatBlt, ret, context, patblt);
#   81|   	brush->style = style;
#   82|   	return ret;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def243]
FreeRDP-3.12.0/libfreerdp/cache/brush.c:116:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘**context.cache.brush’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:95:13: enter_function: entry to ‘update_gdi_polygon_cb’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:109:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/brush.c:111:31: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:111:31: call_function: calling ‘brush_cache_get’ from ‘update_gdi_polygon_cb’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:111:31: return_function: returning to ‘update_gdi_polygon_cb’ from ‘brush_cache_get’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:116:9: danger: dereference of NULL ‘*cache.brush’
#  114|   
#  115|   	WINPR_ASSERT(cache->brush);
#  116|-> 	IFCALLRET(cache->brush->PolygonCB, ret, context, polygon_cb);
#  117|   	brush->style = style;
#  118|   	return ret;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def244]
FreeRDP-3.12.0/libfreerdp/cache/brush.c:271:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:251:12: branch_false: following ‘false’ branch (when ‘brushCache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/brush.c:254:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:257:45: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:259:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/cache/brush.c:262:49: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:264:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/brush.c:265:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:271:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/2)
#  269|   	WINPR_PRAGMA_DIAG_PUSH
#  270|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  271|-> 	brush_cache_free(brushCache);
#  272|   	WINPR_PRAGMA_DIAG_POP
#  273|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def245]
FreeRDP-3.12.0/libfreerdp/cache/brush.c:271:9: warning[-Wanalyzer-mismatching-deallocation]: ‘brushCache’ should have been deallocated with ‘free’ but was deallocated with ‘brush_cache_free’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:249:38: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/brush.c:251:12: branch_false: following ‘false’ branch (when ‘brushCache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/brush.c:254:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:259:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/brush.c:260:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:271:9: danger: deallocated with ‘brush_cache_free’ here; allocation at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  269|   	WINPR_PRAGMA_DIAG_PUSH
#  270|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  271|-> 	brush_cache_free(brushCache);
#  272|   	WINPR_PRAGMA_DIAG_POP
#  273|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def246]
FreeRDP-3.12.0/libfreerdp/cache/brush.c:280:21: warning[-Wanalyzer-use-after-free]: use after ‘brush_cache_free’ of ‘brushCache’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:243:16: enter_function: entry to ‘brush_cache_new’
FreeRDP-3.12.0/libfreerdp/cache/brush.c:249:38: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:251:12: branch_false: following ‘false’ branch (when ‘brushCache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/brush.c:254:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:271:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/cache/brush.c:271:9: call_function: calling ‘brush_cache_free’ from ‘brush_cache_new’
#  278|   	if (brushCache)
#  279|   	{
#  280|-> 		if (brushCache->entries)
#  281|   		{
#  282|   			for (size_t i = 0; i < brushCache->maxEntries; i++)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def247]
FreeRDP-3.12.0/libfreerdp/cache/cache.c:78:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/cache/cache.c:36:12: branch_false: following ‘false’ branch (when ‘cache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/cache.c:39:24: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:39:24: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:41:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/cache/cache.c:44:24: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:46:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/cache.c:47:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:78:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#   76|   	WINPR_PRAGMA_DIAG_PUSH
#   77|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#   78|-> 	cache_free(cache);
#   79|   	WINPR_PRAGMA_DIAG_POP
#   80|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def248]
FreeRDP-3.12.0/libfreerdp/cache/cache.c:78:9: warning[-Wanalyzer-mismatching-deallocation]: ‘cache’ should have been deallocated with ‘free’ but was deallocated with ‘cache_free’
FreeRDP-3.12.0/libfreerdp/cache/cache.c:34:28: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/cache.c:36:12: branch_false: following ‘false’ branch (when ‘cache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/cache.c:39:24: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:41:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/cache.c:42:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:78:9: danger: deallocated with ‘cache_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#   76|   	WINPR_PRAGMA_DIAG_PUSH
#   77|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#   78|-> 	cache_free(cache);
#   79|   	WINPR_PRAGMA_DIAG_POP
#   80|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def249]
FreeRDP-3.12.0/libfreerdp/cache/cache.c:87:17: warning[-Wanalyzer-use-after-free]: use after ‘cache_free’ of ‘cache’
FreeRDP-3.12.0/libfreerdp/cache/cache.c:28:11: enter_function: entry to ‘cache_new’
FreeRDP-3.12.0/libfreerdp/cache/cache.c:34:28: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:36:12: branch_false: following ‘false’ branch (when ‘cache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/cache.c:39:24: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:78:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:78:9: call_function: calling ‘cache_free’ from ‘cache_new’
#   85|   	if (cache != NULL)
#   86|   	{
#   87|-> 		glyph_cache_free(cache->glyph);
#   88|   		brush_cache_free(cache->brush);
#   89|   		pointer_cache_free(cache->pointer);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def250]
FreeRDP-3.12.0/libfreerdp/cache/cache.c:111:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_color_table_order’
FreeRDP-3.12.0/libfreerdp/cache/cache.c:101:40: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/cache.c:103:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/cache.c:104:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:111:9: danger: deallocated with ‘free_cache_color_table_order’ here; allocation at [(1)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  109|   	WINPR_PRAGMA_DIAG_PUSH
#  110|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  111|-> 	free_cache_color_table_order(context, dst);
#  112|   	WINPR_PRAGMA_DIAG_POP
#  113|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def251]
FreeRDP-3.12.0/libfreerdp/cache/cache.c:143:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_surface_bits_command’
FreeRDP-3.12.0/libfreerdp/cache/cache.c:125:37: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/cache.c:126:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/cache.c:127:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/cache.c:143:9: danger: deallocated with ‘free_surface_bits_command’ here; allocation at [(1)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  141|   	WINPR_PRAGMA_DIAG_PUSH
#  142|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  143|-> 	free_surface_bits_command(context, dst);
#  144|   	WINPR_PRAGMA_DIAG_POP
#  145|   	return NULL;

Error: COMPILER_WARNING (CWE-1164): [#def252]
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:83:7: warning[-Wunused-function]: ‘nine_grid_cache_get’ defined but not used
#   83 | void* nine_grid_cache_get(rdpNineGridCache* nine_grid, UINT32 index)
#      |       ^~~~~~~~~~~~~~~~~~~
#   81|   }
#   82|   
#   83|-> void* nine_grid_cache_get(rdpNineGridCache* nine_grid, UINT32 index)
#   84|   {
#   85|   	void* entry = NULL;

Error: COMPILER_WARNING (CWE-1164): [#def253]
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:104:6: warning[-Wunused-function]: ‘nine_grid_cache_put’ defined but not used
#  104 | void nine_grid_cache_put(rdpNineGridCache* nine_grid, UINT32 index, void* entry)
#      |      ^~~~~~~~~~~~~~~~~~~
#  102|   }
#  103|   
#  104|-> void nine_grid_cache_put(rdpNineGridCache* nine_grid, UINT32 index, void* entry)
#  105|   {
#  106|   	if (index >= nine_grid->maxEntries)

Error: GCC_ANALYZER_WARNING (CWE-762): [#def254]
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:150:9: warning[-Wanalyzer-mismatching-deallocation]: ‘nine_grid’ should have been deallocated with ‘free’ but was deallocated with ‘nine_grid_cache_free’
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:126:40: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:127:12: branch_false: following ‘false’ branch (when ‘nine_grid’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:130:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:150:9: danger: deallocated with ‘nine_grid_cache_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  148|   	WINPR_PRAGMA_DIAG_PUSH
#  149|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  150|-> 	nine_grid_cache_free(nine_grid);
#  151|   	WINPR_PRAGMA_DIAG_POP
#  152|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def255]
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:159:21: warning[-Wanalyzer-use-after-free]: use after ‘nine_grid_cache_free’ of ‘nine_grid’
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:116:19: enter_function: entry to ‘nine_grid_cache_new’
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:126:40: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:127:12: branch_false: following ‘false’ branch (when ‘nine_grid’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:130:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:150:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/cache/nine_grid.c:150:9: call_function: calling ‘nine_grid_cache_free’ from ‘nine_grid_cache_new’
#  157|   	if (nine_grid != NULL)
#  158|   	{
#  159|-> 		if (nine_grid->entries != NULL)
#  160|   		{
#  161|   			for (size_t i = 0; i < nine_grid->maxEntries; i++)

Error: GCC_ANALYZER_WARNING (CWE-762): [#def256]
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:227:9: warning[-Wanalyzer-mismatching-deallocation]: ‘offscreenCache’ should have been deallocated with ‘free’ but was deallocated with ‘offscreen_cache_free’
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:204:46: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:206:12: branch_false: following ‘false’ branch (when ‘offscreenCache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:209:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:227:9: danger: deallocated with ‘offscreen_cache_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  225|   	WINPR_PRAGMA_DIAG_PUSH
#  226|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  227|-> 	offscreen_cache_free(offscreenCache);
#  228|   	WINPR_PRAGMA_DIAG_POP
#  229|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def257]
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:236:21: warning[-Wanalyzer-use-after-free]: use after ‘offscreen_cache_free’ of ‘offscreenCache’
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:194:20: enter_function: entry to ‘offscreen_cache_new’
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:204:46: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:206:12: branch_false: following ‘false’ branch (when ‘offscreenCache’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:209:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:227:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/cache/offscreen.c:227:9: call_function: calling ‘offscreen_cache_free’ from ‘offscreen_cache_new’
#  234|   	if (offscreenCache)
#  235|   	{
#  236|-> 		if (offscreenCache->entries)
#  237|   		{
#  238|   			for (size_t i = 0; i < offscreenCache->maxEntries; i++)

Error: COMPILER_WARNING (CWE-1164): [#def258]
FreeRDP-3.12.0/libfreerdp/cache/palette.c:52:7: warning[-Wunused-function]: ‘palette_cache_get’ defined but not used
#   52 | void* palette_cache_get(rdpPaletteCache* paletteCache, UINT32 index)
#      |       ^~~~~~~~~~~~~~~~~
#   50|   }
#   51|   
#   52|-> void* palette_cache_get(rdpPaletteCache* paletteCache, UINT32 index)
#   53|   {
#   54|   	void* entry = NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def259]
FreeRDP-3.12.0/libfreerdp/cache/palette.c:139:9: warning[-Wanalyzer-mismatching-deallocation]: ‘dst’ should have been deallocated with ‘free’ but was deallocated with ‘free_palette_update’
FreeRDP-3.12.0/libfreerdp/cache/palette.c:129:31: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/cache/palette.c:131:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/cache/palette.c:132:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/cache/palette.c:139:9: danger: deallocated with ‘free_palette_update’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  137|   	WINPR_PRAGMA_DIAG_PUSH
#  138|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  139|-> 	free_palette_update(context, dst);
#  140|   	WINPR_PRAGMA_DIAG_POP
#  141|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def260]
FreeRDP-3.12.0/libfreerdp/codec/audio.c:264:16: warning[-Wanalyzer-malloc-leak]: leak of ‘audio_formats_new(1)’
FreeRDP-3.12.0/libfreerdp/codec/audio.c:257:15: enter_function: entry to ‘audio_format_new’
FreeRDP-3.12.0/libfreerdp/codec/audio.c:259:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/audio.c:259:16: call_function: calling ‘audio_formats_new’ from ‘audio_format_new’
#  262|   AUDIO_FORMAT* audio_formats_new(size_t count)
#  263|   {
#  264|-> 	return calloc(count, sizeof(AUDIO_FORMAT));
#  265|   }
#  266|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def261]
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:370:9: warning[-Wanalyzer-mismatching-deallocation]: ‘bulk’ should have been deallocated with ‘free’ but was deallocated with ‘bulk_free’
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:340:26: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:342:12: branch_false: following ‘false’ branch (when ‘bulk’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:345:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:347:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:348:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:370:9: danger: deallocated with ‘bulk_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  368|   	WINPR_PRAGMA_DIAG_PUSH
#  369|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  370|-> 	bulk_free(bulk);
#  371|   	WINPR_PRAGMA_DIAG_POP
#  372|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def262]
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:380:9: warning[-Wanalyzer-use-after-free]: use after ‘bulk_free’ of ‘bulk’
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:335:10: enter_function: entry to ‘bulk_new’
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:340:26: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:342:12: branch_false: following ‘false’ branch (when ‘bulk’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:345:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:370:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/codec/bulk.c:370:9: call_function: calling ‘bulk_free’ from ‘bulk_new’
#  378|   		return;
#  379|   
#  380|-> 	mppc_context_free(bulk->mppcSend);
#  381|   	mppc_context_free(bulk->mppcRecv);
#  382|   	ncrush_context_free(bulk->ncrushRecv);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def263]
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1205:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_calloc(1, 850496, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘clear_context_free’
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1178:48: acquire_memory: allocated here (expects deallocation with ‘winpr_aligned_free’)
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1180:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1183:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1186:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1187:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1205:9: danger: deallocated with ‘clear_context_free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘winpr_aligned_free’
# 1203|   	WINPR_PRAGMA_DIAG_PUSH
# 1204|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1205|-> 	clear_context_free(clear);
# 1206|   	WINPR_PRAGMA_DIAG_POP
# 1207|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def264]
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1215:9: warning[-Wanalyzer-use-after-free]: use after ‘clear_context_free’ of ‘clear’
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1176:16: enter_function: entry to ‘clear_context_new’
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1178:48: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1180:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1183:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1186:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1187:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1205:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/codec/clear.c:1205:9: call_function: calling ‘clear_context_free’ from ‘clear_context_new’
# 1213|   		return;
# 1214|   
# 1215|-> 	nsc_context_free(clear->nsc);
# 1216|   	winpr_aligned_free(clear->TempBuffer);
# 1217|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def265]
FreeRDP-3.12.0/libfreerdp/codec/color.c:1435:56: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘palette’
FreeRDP-3.12.0/libfreerdp/codec/color.c:1432:28: branch_true: following ‘true’ branch (when ‘color <= 255’)...
FreeRDP-3.12.0/libfreerdp/codec/color.c:1434:33: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/color.c:1432:28: branch_true: following ‘true’ branch (when ‘color <= 255’)...
FreeRDP-3.12.0/libfreerdp/codec/color.c:1434:33: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/color.c:1435:56: danger: dereference of NULL ‘palette’
# 1433|   			{
# 1434|   				tmp = palette->palette[color];
# 1435|-> 				FreeRDPSplitColor(tmp, palette->format, _r, _g, _b, _a, NULL);
# 1436|   			}
# 1437|   			else

Error: GCC_ANALYZER_WARNING (CWE-401): [#def266]
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1179:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1120:22: enter_function: entry to ‘freerdp_dsp_context_new’
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1127:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1130:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1130:14: call_function: calling ‘freerdp_dsp_common_context_init’ from ‘freerdp_dsp_context_new’
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1130:14: return_function: returning to ‘freerdp_dsp_context_new’ from ‘freerdp_dsp_common_context_init’
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1130:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1134:24: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1179:9: danger: ‘<unknown>’ leaks here; was allocated at [(6)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/5)
# 1177|   	return context;
# 1178|   fail:
# 1179|-> 	freerdp_dsp_context_free(context);
# 1180|   	return NULL;
# 1181|   #endif

Error: GCC_ANALYZER_WARNING (CWE-762): [#def267]
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1179:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_dsp_context_free’
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1120:22: enter_function: entry to ‘freerdp_dsp_context_new’
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1125:40: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1127:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1130:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1130:14: call_function: calling ‘freerdp_dsp_common_context_init’ from ‘freerdp_dsp_context_new’
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1130:14: return_function: returning to ‘freerdp_dsp_context_new’ from ‘freerdp_dsp_common_context_init’
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1130:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1134:24: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/dsp.c:1179:9: danger: deallocated with ‘freerdp_dsp_context_free’ here; allocation at [(2)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
# 1177|   	return context;
# 1178|   fail:
# 1179|-> 	freerdp_dsp_context_free(context);
# 1180|   	return NULL;
# 1181|   #endif

Error: CPPCHECK_WARNING (CWE-664): [#def268]
FreeRDP-3.12.0/libfreerdp/codec/dsp_fdk_aac.c:35: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   33|   		char buffer[1024] = { 0 };
#   34|   
#   35|-> 		va_list ap = { 0 };
#   36|   		va_start(ap, fmt);
#   37|   		vsnprintf(buffer, sizeof(buffer), fmt, ap);

Error: COMPILER_WARNING (CWE-1164): [#def269]
FreeRDP-3.12.0/libfreerdp/codec/dsp_fdk_impl.c:165:13: warning[-Wunused-function]: ‘log_dec_info’ defined but not used
#  165 | static void log_dec_info(const CStreamInfo* info, void (*log)(const char* fmt, ...))
#      |             ^~~~~~~~~~~~
#  163|   }
#  164|   
#  165|-> static void log_dec_info(const CStreamInfo* info, void (*log)(const char* fmt, ...))
#  166|   {
#  167|   	assert(info);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def270]
FreeRDP-3.12.0/libfreerdp/codec/h264.c:481:81: warning[-Wanalyzer-malloc-leak]: leak of ‘*((BYTE * (*)[3])<unknown>)[0]’
FreeRDP-3.12.0/libfreerdp/codec/h264.c:469:36: branch_true: following ‘true’ branch (when ‘x != 3’)...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:471:36: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:474:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:477:38: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:477:38: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:478:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:480:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:482:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:484:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:469:36: branch_true: following ‘true’ branch (when ‘x != 3’)...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:471:36: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:474:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:477:38: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:477:38: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:478:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:480:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:481:81: danger: ‘*((BYTE * (*)[3])<unknown>)[0]’ leaks here; was allocated at [(15)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/14)
#  479|   				return FALSE;
#  480|   			ppYUVDstData[x] = tmp1;
#  481|-> 			BYTE* tmp2 = winpr_aligned_recalloc(ppOldYUVDstData[x], piDstSize[x], 1, 16);
#  482|   			if (!tmp2)
#  483|   				return FALSE;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def271]
FreeRDP-3.12.0/libfreerdp/codec/h264.c:749:9: warning[-Wanalyzer-mismatching-deallocation]: ‘h264’ should have been deallocated with ‘free’ but was deallocated with ‘h264_context_free’
FreeRDP-3.12.0/libfreerdp/codec/h264.c:720:45: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/codec/h264.c:721:12: branch_false: following ‘false’ branch (when ‘h264’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:724:21: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:726:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:727:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:749:9: danger: deallocated with ‘h264_context_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  747|   	WINPR_PRAGMA_DIAG_PUSH
#  748|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  749|-> 	h264_context_free(h264);
#  750|   	WINPR_PRAGMA_DIAG_POP
#  751|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def272]
FreeRDP-3.12.0/libfreerdp/codec/h264.c:758:21: warning[-Wanalyzer-use-after-free]: use after ‘h264_context_free’ of ‘h264’
FreeRDP-3.12.0/libfreerdp/codec/h264.c:718:15: enter_function: entry to ‘h264_context_new’
FreeRDP-3.12.0/libfreerdp/codec/h264.c:720:45: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:721:12: branch_false: following ‘false’ branch (when ‘h264’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/codec/h264.c:724:21: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:749:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/codec/h264.c:749:9: call_function: calling ‘h264_context_free’ from ‘h264_context_new’
#  756|   	if (h264)
#  757|   	{
#  758|-> 		if (h264->subsystem)
#  759|   			h264->subsystem->Uninit(h264);
#  760|   

Error: COMPILER_WARNING (CWE-1164): [#def273]
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:150:20: warning[-Wunused-function]: ‘rle_code_str_buffer’ defined but not used
#  150 | static const char* rle_code_str_buffer(UINT32 code, char* buffer, size_t size)
#      |                    ^~~~~~~~~~~~~~~~~~~
#  148|   }
#  149|   
#  150|-> static const char* rle_code_str_buffer(UINT32 code, char* buffer, size_t size)
#  151|   {
#  152|   	const char* str = rle_code_str(code);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def274]
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:746:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_recalloc(0, 1, 24, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘bitmap_interleaved_context_free’
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:724:52: acquire_memory: allocated here (expects deallocation with ‘winpr_aligned_free’)
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:727:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:729:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:732:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:733:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:746:9: danger: deallocated with ‘bitmap_interleaved_context_free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘winpr_aligned_free’
#  744|   	WINPR_PRAGMA_DIAG_PUSH
#  745|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  746|-> 	bitmap_interleaved_context_free(interleaved);
#  747|   	WINPR_PRAGMA_DIAG_POP
#  748|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def275]
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:756:28: warning[-Wanalyzer-use-after-free]: use after ‘bitmap_interleaved_context_free’ of ‘interleaved’
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:721:29: enter_function: entry to ‘bitmap_interleaved_context_new’
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:724:52: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:727:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:729:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:732:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:733:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:746:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/codec/interleaved.c:746:9: call_function: calling ‘bitmap_interleaved_context_free’ from ‘bitmap_interleaved_context_new’
#  754|   		return;
#  755|   
#  756|-> 	winpr_aligned_free(interleaved->TempBuffer);
#  757|   	Stream_Free(interleaved->bts, TRUE);
#  758|   	winpr_aligned_free(interleaved);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def276]
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:289:43: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_recalloc(**context_51(D).priv.PlaneBuffers[i], plength, 1, 32)’
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:262:13: enter_function: entry to ‘nsc_context_initialize’
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:264:14: call_function: calling ‘nsc_stream_initialize’ from ‘nsc_context_initialize’
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:264:14: return_function: returning to ‘nsc_context_initialize’ from ‘nsc_stream_initialize’
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:264:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:267:39: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:284:12: branch_false: following ‘false’ branch (when ‘plength <= 4294967295’)...
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:287:23: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:287:12: branch_true: following ‘true’ branch...
 branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:289:36: branch_true: following ‘true’ branch (when ‘i != 4’)...
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:291:67: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:291:44: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:294:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:297:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:289:43: danger: ‘winpr_aligned_recalloc(**context_51(D).priv.PlaneBuffers[i], plength, 1, 32)’ leaks here; was allocated at [(40)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/39)
#  287|   	if (plength > context->priv->PlaneBuffersLength)
#  288|   	{
#  289|-> 		for (size_t i = 0; i < 4; i++)
#  290|   		{
#  291|   			void* tmp = (BYTE*)winpr_aligned_recalloc(context->priv->PlaneBuffers[i], plength,

Error: GCC_ANALYZER_WARNING (CWE-762): [#def277]
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:373:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_calloc(1, 120, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘nsc_context_free’
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:343:46: acquire_memory: allocated here (expects deallocation with ‘winpr_aligned_free’)
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:345:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:348:44: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:350:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:351:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:373:9: danger: deallocated with ‘nsc_context_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘winpr_aligned_free’
#  371|   	WINPR_PRAGMA_DIAG_PUSH
#  372|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  373|-> 	nsc_context_free(context);
#  374|   	WINPR_PRAGMA_DIAG_POP
#  375|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def278]
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:383:13: warning[-Wanalyzer-use-after-free]: use after ‘nsc_context_free’ of ‘context’
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:341:14: enter_function: entry to ‘nsc_context_new’
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:343:46: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:345:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:348:44: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:350:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:351:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:373:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/codec/nsc.c:373:9: call_function: calling ‘nsc_context_free’ from ‘nsc_context_new’
#  381|   		return;
#  382|   
#  383|-> 	if (context->priv)
#  384|   	{
#  385|   		for (size_t i = 0; i < 5; i++)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def279]
FreeRDP-3.12.0/libfreerdp/codec/nsc_encode.c:74:40: warning[-Wanalyzer-malloc-leak]: leak of ‘**context_47(D).priv.PlaneBuffers[i]’
FreeRDP-3.12.0/libfreerdp/codec/nsc_encode.c:484:6: enter_function: entry to ‘nsc_compose_message’
FreeRDP-3.12.0/libfreerdp/codec/nsc_encode.c:491:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/nsc_encode.c:497:14: call_function: calling ‘nsc_context_initialize_encode’ from ‘nsc_compose_message’
#   72|   	if (length > context->priv->PlaneBuffersLength)
#   73|   	{
#   74|-> 		for (int i = 0; i < 5; i++)
#   75|   		{
#   76|   			BYTE* tmp = (BYTE*)winpr_aligned_recalloc(context->priv->PlaneBuffers[i], length,

Error: COMPILER_WARNING (CWE-1164): [#def280]
FreeRDP-3.12.0/libfreerdp/codec/nsc_encode.c:419:15: warning[-Wunused-function]: ‘nsc_compute_byte_count’ defined but not used
#  419 | static UINT32 nsc_compute_byte_count(NSC_CONTEXT* WINPR_RESTRICT context,
#      |               ^~~~~~~~~~~~~~~~~~~~~~
#  417|   }
#  418|   
#  419|-> static UINT32 nsc_compute_byte_count(NSC_CONTEXT* WINPR_RESTRICT context,
#  420|                                        UINT32* WINPR_RESTRICT ByteCount, UINT32 width, UINT32 height)
#  421|   {

Error: GCC_ANALYZER_WARNING (CWE-762): [#def281]
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1767:17: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_calloc(1, 176, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘freerdp_bitmap_planar_context_free’
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1740:24: enter_function: entry to ‘freerdp_bitmap_planar_context_new’
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1744:37: acquire_memory: allocated here (expects deallocation with ‘winpr_aligned_free’)
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1746:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1749:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1763:14: call_function: calling ‘freerdp_bitmap_planar_context_reset’ from ‘freerdp_bitmap_planar_context_new’
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1763:14: return_function: returning to ‘freerdp_bitmap_planar_context_new’ from ‘freerdp_bitmap_planar_context_reset’
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1763:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1767:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1767:17: danger: deallocated with ‘freerdp_bitmap_planar_context_free’ here; allocation at [(2)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘winpr_aligned_free’
# 1765|   		WINPR_PRAGMA_DIAG_PUSH
# 1766|   		WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1767|-> 		freerdp_bitmap_planar_context_free(context);
# 1768|   		WINPR_PRAGMA_DIAG_POP
# 1769|   		return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def282]
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1780:28: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_bitmap_planar_context_free’ of ‘context’
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1740:24: enter_function: entry to ‘freerdp_bitmap_planar_context_new’
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1744:37: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1746:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1749:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1763:14: call_function: calling ‘freerdp_bitmap_planar_context_reset’ from ‘freerdp_bitmap_planar_context_new’
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1763:14: return_function: returning to ‘freerdp_bitmap_planar_context_new’ from ‘freerdp_bitmap_planar_context_reset’
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1763:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1767:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1767:17: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/codec/planar.c:1767:17: call_function: calling ‘freerdp_bitmap_planar_context_free’ from ‘freerdp_bitmap_planar_context_new’
# 1778|   		return;
# 1779|   
# 1780|-> 	winpr_aligned_free(context->pTempData);
# 1781|   	winpr_aligned_free(context->planesBuffer);
# 1782|   	winpr_aligned_free(context->deltaPlanesBuffer);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def283]
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2414:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘progressive’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2401:7: enter_function: entry to ‘progressive_decompress’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2410:48: call_function: calling ‘progressive_get_surface_data’ from ‘progressive_decompress’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2410:48: return_function: returning to ‘progressive_decompress’ from ‘progressive_get_surface_data’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2412:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2414:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2414:17: danger: dereference of NULL ‘progressive’
# 2412|   	if (!surface)
# 2413|   	{
# 2414|-> 		WLog_Print(progressive->log, WLOG_ERROR, "ProgressiveRegion no surface for %" PRIu16,
# 2415|   		           surfaceId);
# 2416|   		return -1001;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def284]
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2631:12: warning[-Wanalyzer-malloc-leak]: leak of ‘progressive_context_new_ex(Compressor, 0)’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2621:22: enter_function: entry to ‘progressive_context_new’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2623:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2623:16: call_function: calling ‘progressive_context_new_ex’ from ‘progressive_context_new’
# 2629|   	    (PROGRESSIVE_CONTEXT*)winpr_aligned_calloc(1, sizeof(PROGRESSIVE_CONTEXT), 32);
# 2630|   
# 2631|-> 	if (!progressive)
# 2632|   		return NULL;
# 2633|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def285]
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2658:17: warning[-Wanalyzer-malloc-leak]: leak of ‘progressive_context_new_ex(Compressor, 0)’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2621:22: enter_function: entry to ‘progressive_context_new’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2623:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2623:16: call_function: calling ‘progressive_context_new_ex’ from ‘progressive_context_new’
# 2656|   		wObject* obj = HashTable_ValueObject(progressive->SurfaceContexts);
# 2657|   		WINPR_ASSERT(obj);
# 2658|-> 		obj->fnObjectFree = progressive_surface_context_free;
# 2659|   	}
# 2660|   	return progressive;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def286]
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2664:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_aligned_calloc(1, 3680648, 32)’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘progressive_context_free’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2629:35: acquire_memory: allocated here (expects deallocation with ‘winpr_aligned_free’)
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2631:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2634:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2637:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2638:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2664:9: danger: deallocated with ‘progressive_context_free’ here; allocation at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘winpr_aligned_free’
# 2662|   	WINPR_PRAGMA_DIAG_PUSH
# 2663|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2664|-> 	progressive_context_free(progressive);
# 2665|   	WINPR_PRAGMA_DIAG_POP
# 2666|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def287]
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2674:9: warning[-Wanalyzer-malloc-leak]: leak of ‘progressive_context_new_ex(Compressor, 0)’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2621:22: enter_function: entry to ‘progressive_context_new’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2623:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2623:16: call_function: calling ‘progressive_context_new_ex’ from ‘progressive_context_new’
# 2672|   		return;
# 2673|   
# 2674|-> 	Stream_Free(progressive->buffer, TRUE);
# 2675|   	Stream_Free(progressive->rects, TRUE);
# 2676|   	rfx_context_free(progressive->rfx_context);

Error: GCC_ANALYZER_WARNING (CWE-416): [#def288]
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2674:9: warning[-Wanalyzer-use-after-free]: use after ‘progressive_context_free’ of ‘progressive’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2626:22: enter_function: entry to ‘progressive_context_new_ex’
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2629:35: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2631:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2634:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2637:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2638:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2664:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/codec/progressive.c:2664:9: call_function: calling ‘progressive_context_free’ from ‘progressive_context_new_ex’
# 2672|   		return;
# 2673|   
# 2674|-> 	Stream_Free(progressive->buffer, TRUE);
# 2675|   	Stream_Free(progressive->rects, TRUE);
# 2676|   	rfx_context_free(progressive->rfx_context);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def289]
FreeRDP-3.12.0/libfreerdp/codec/region.c:91:21: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘region’
FreeRDP-3.12.0/libfreerdp/codec/region.c:497:6: enter_function: entry to ‘region16_union_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:512:22: call_function: calling ‘region16_extents’ from ‘region16_union_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:512:22: return_function: returning to ‘region16_union_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:513:22: call_function: inlined call to ‘region16_extents_noconst’ from ‘region16_union_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:515:14: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:515:14: call_function: calling ‘region16_n_rects’ from ‘region16_union_rect’
#   89|   	WINPR_ASSERT(region->data);
#   90|   	WINPR_ASSERT(region->data->nbRects <= INT32_MAX);
#   91|-> 	return (int)region->data->nbRects;
#   92|   }
#   93|   

Error: GCC_ANALYZER_WARNING (CWE-126): [#def290]
FreeRDP-3.12.0/libfreerdp/codec/region.c:265:16: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  263|                                             const RECTANGLE_16** srcPtr, RECTANGLE_16** dstPtr)
#  264|   {
#  265|-> 	UINT16 refY = src->top;
#  266|   	const RECTANGLE_16* startOverlap = NULL;
#  267|   	const RECTANGLE_16* endOverlap = NULL;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def291]
FreeRDP-3.12.0/libfreerdp/codec/region.c:296:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  294|   	{
#  295|   		/* items before unionRect */
#  296|-> 		while ((src < end) && (src->top == refY) && (src->right < unionRect->left))
#  297|   		{
#  298|   			dst->top = newTop;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def292]
FreeRDP-3.12.0/libfreerdp/codec/region.c:296:62: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  294|   	{
#  295|   		/* items before unionRect */
#  296|-> 		while ((src < end) && (src->top == refY) && (src->right < unionRect->left))
#  297|   		{
#  298|   			dst->top = newTop;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def293]
FreeRDP-3.12.0/libfreerdp/codec/region.c:301:37: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  299|   			dst->bottom = newBottom;
#  300|   			dst->right = src->right;
#  301|-> 			dst->left = src->left;
#  302|   			src++;
#  303|   			dst++;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def294]
FreeRDP-3.12.0/libfreerdp/codec/region.c:311:37: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  309|   		endOverlap = unionRect;
#  310|   
#  311|-> 		if ((src < end) && (src->top == refY) && (src->left < unionRect->left))
#  312|   			startOverlap = src;
#  313|   

Error: GCC_ANALYZER_WARNING (CWE-126): [#def295]
FreeRDP-3.12.0/libfreerdp/codec/region.c:311:59: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  309|   		endOverlap = unionRect;
#  310|   
#  311|-> 		if ((src < end) && (src->top == refY) && (src->left < unionRect->left))
#  312|   			startOverlap = src;
#  313|   

Error: GCC_ANALYZER_WARNING (CWE-126): [#def296]
FreeRDP-3.12.0/libfreerdp/codec/region.c:314:40: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  312|   			startOverlap = src;
#  313|   
#  314|-> 		while ((src < end) && (src->top == refY) && (src->right < unionRect->right))
#  315|   		{
#  316|   			src++;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def297]
FreeRDP-3.12.0/libfreerdp/codec/region.c:314:62: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  312|   			startOverlap = src;
#  313|   
#  314|-> 		while ((src < end) && (src->top == refY) && (src->right < unionRect->right))
#  315|   		{
#  316|   			src++;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def298]
FreeRDP-3.12.0/libfreerdp/codec/region.c:334:32: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  332|   
#  333|   	/* treat remaining items on the same band */
#  334|-> 	while ((src < end) && (src->top == refY))
#  335|   	{
#  336|   		dst->top = newTop;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def299]
FreeRDP-3.12.0/libfreerdp/codec/region.c:338:30: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  336|   		dst->top = newTop;
#  337|   		dst->bottom = newBottom;
#  338|-> 		dst->right = src->right;
#  339|   		dst->left = src->left;
#  340|   		src++;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def300]
FreeRDP-3.12.0/libfreerdp/codec/region.c:339:29: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  337|   		dst->bottom = newBottom;
#  338|   		dst->right = src->right;
#  339|-> 		dst->left = src->left;
#  340|   		src++;
#  341|   		dst++;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def301]
FreeRDP-3.12.0/libfreerdp/codec/region.c:395:16: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  393|                                           const RECTANGLE_16* rect)
#  394|   {
#  395|-> 	UINT16 refY = band->top;
#  396|   
#  397|   	if ((band->top > rect->top) || (rect->bottom > band->bottom))

Error: GCC_ANALYZER_WARNING (CWE-126): [#def302]
FreeRDP-3.12.0/libfreerdp/codec/region.c:397:56: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  395|   	UINT16 refY = band->top;
#  396|   
#  397|-> 	if ((band->top > rect->top) || (rect->bottom > band->bottom))
#  398|   		return FALSE;
#  399|   

Error: GCC_ANALYZER_WARNING (CWE-126): [#def303]
FreeRDP-3.12.0/libfreerdp/codec/region.c:403:36: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  401|   	 * 		that is after rect->left we're sure that the result is False.
#  402|   	 */
#  403|-> 	while ((band < endPtr) && (band->top == refY) && (band->left <= rect->left))
#  404|   	{
#  405|   		if (rect->right <= band->right)

Error: GCC_ANALYZER_WARNING (CWE-126): [#def304]
FreeRDP-3.12.0/libfreerdp/codec/region.c:403:59: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  401|   	 * 		that is after rect->left we're sure that the result is False.
#  402|   	 */
#  403|-> 	while ((band < endPtr) && (band->top == refY) && (band->left <= rect->left))
#  404|   	{
#  405|   		if (rect->right <= band->right)

Error: GCC_ANALYZER_WARNING (CWE-126): [#def305]
FreeRDP-3.12.0/libfreerdp/codec/region.c:405:36: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  403|   	while ((band < endPtr) && (band->top == refY) && (band->left <= rect->left))
#  404|   	{
#  405|-> 		if (rect->right <= band->right)
#  406|   			return TRUE;
#  407|   

Error: GCC_ANALYZER_WARNING (CWE-457): [#def306]
FreeRDP-3.12.0/libfreerdp/codec/region.c:464:33: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘endBand’
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  462|   
#  463|   			if (toMove)
#  464|-> 				MoveMemory(band2, endBand, toMove);
#  465|   
#  466|   			finalNbRects -= bandItems;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def307]
FreeRDP-3.12.0/libfreerdp/codec/region.c:518:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dst’
FreeRDP-3.12.0/libfreerdp/codec/region.c:497:6: enter_function: entry to ‘region16_union_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:512:22: call_function: calling ‘region16_extents’ from ‘region16_union_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:512:22: return_function: returning to ‘region16_union_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:513:22: call_function: inlined call to ‘region16_extents_noconst’ from ‘region16_union_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:515:14: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:515:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:518:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:518:17: danger: dereference of NULL ‘dst’
#  516|   	{
#  517|   		/* source is empty, so the union is rect */
#  518|-> 		dst->extents = *rect;
#  519|   		dst->data = allocateRegion(1);
#  520|   

Error: GCC_ANALYZER_WARNING (CWE-126): [#def308]
FreeRDP-3.12.0/libfreerdp/codec/region.c:557:22: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  555|   	while (currentBand < endSrcRect)
#  556|   	{
#  557|-> 		if ((currentBand->bottom <= rect->top) || (rect->bottom <= currentBand->top) ||
#  558|   		    rectangle_contained_in_band(currentBand, endSrcRect, rect))
#  559|   		{

Error: GCC_ANALYZER_WARNING (CWE-126): [#def309]
FreeRDP-3.12.0/libfreerdp/codec/region.c:557:76: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  555|   	while (currentBand < endSrcRect)
#  556|   	{
#  557|-> 		if ((currentBand->bottom <= rect->top) || (rect->bottom <= currentBand->top) ||
#  558|   		    rectangle_contained_in_band(currentBand, endSrcRect, rect))
#  559|   		{

Error: GCC_ANALYZER_WARNING (CWE-126): [#def310]
FreeRDP-3.12.0/libfreerdp/codec/region.c:574:89: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  572|   			        +----+
#  573|   			*/
#  574|-> 			region16_copy_band_with_union(dstRect, currentBand, endSrcRect, currentBand->top,
#  575|   			                              currentBand->bottom, NULL, &usedRects, &nextBand,
#  576|   			                              &dstRect);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def311]
FreeRDP-3.12.0/libfreerdp/codec/region.c:615:44: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  613|   
#  614|   			/* do the merge zone (all cases) */
#  615|-> 			if (rect->bottom < currentBand->bottom)
#  616|   				mergeBottom = rect->bottom;
#  617|   

Error: GCC_ANALYZER_WARNING (CWE-126): [#def312]
FreeRDP-3.12.0/libfreerdp/codec/region.c:622:44: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  620|   
#  621|   			/* test if we need a bottom split, case 1 and 4 */
#  622|-> 			if (rect->bottom < currentBand->bottom)
#  623|   			{
#  624|   				region16_copy_band_with_union(dstRect, currentBand, endSrcRect, mergeBottom,

Error: GCC_ANALYZER_WARNING (CWE-126): [#def313]
FreeRDP-3.12.0/libfreerdp/codec/region.c:629:25: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  627|   			}
#  628|   
#  629|-> 			topInterBand = currentBand->bottom;
#  630|   		}
#  631|   

Error: GCC_ANALYZER_WARNING (CWE-126): [#def314]
FreeRDP-3.12.0/libfreerdp/codec/region.c:647:66: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/libfreerdp/codec/region.c:728:6: enter_function: entry to ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: call_function: calling ‘region16_rects’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:741:18: return_function: returning to ‘region16_intersect_rect’ from ‘region16_rects’
FreeRDP-3.12.0/libfreerdp/codec/region.c:743:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: call_function: calling ‘region16_extents’ from ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:749:22: return_function: returning to ‘region16_intersect_rect’ from ‘region16_extents’
FreeRDP-3.12.0/libfreerdp/codec/region.c:751:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:753:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:756:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/region.c:757:32: call_function: calling ‘region16_union_rect’ from ‘region16_intersect_rect’
#  645|   		 *
#  646|   		 */
#  647|-> 		if ((nextBand < endSrcRect) && (nextBand->top != currentBand->bottom) &&
#  648|   		    (rect->bottom > currentBand->bottom) && (rect->top < nextBand->top))
#  649|   		{

Error: COMPILER_WARNING: [#def315]
FreeRDP-3.12.0/libfreerdp/codec/region.c: scope_hint: In function ‘region16_intersect_rect’
FreeRDP-3.12.0/libfreerdp/codec/region.c:811:17: warning[-Wuse-after-free]: pointer ‘newItems_63’ may be used after ‘realloc’
#  811 |                 free(newItems);
#      |                 ^~~~~~~~~~~~~~
FreeRDP-3.12.0/libfreerdp/codec/region.c:807:21: note: call to ‘realloc’ here
#  807 |         dst->data = realloc(newItems, WINPR_ASSERTING_INT_CAST(size_t, newItems->size));
#      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  809|   	if (!dst->data)
#  810|   	{
#  811|-> 		free(newItems);
#  812|   		return FALSE;
#  813|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def316]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:819:13: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_recalloc(*message.tiles,  count, 8, 32)’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1929:28: enter_function: entry to ‘rfx_split_message’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1942:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1946:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1948:34: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1959:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1961:41: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1964:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1966:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1967:30: call_function: calling ‘rfx_allocate_tiles’ from ‘rfx_split_message’
#  817|   	RFX_TILE** tmpTiles =
#  818|   	    (RFX_TILE**)winpr_aligned_recalloc((void*)message->tiles, count, sizeof(RFX_TILE*), 32);
#  819|-> 	if (!tmpTiles && (count != 0))
#  820|   		return FALSE;
#  821|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def317]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:823:12: warning[-Wanalyzer-malloc-leak]: leak of ‘*((struct S_RFX_MESSAGE *)message).tiles’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2000:6: enter_function: entry to ‘rfx_message_list_free’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2002:12: branch_false: following ‘false’ branch (when ‘messages’ is non-NULL)...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2004:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2005:54: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2005:17: call_function: calling ‘rfx_message_free’ from ‘rfx_message_list_free’
#  821|   
#  822|   	message->tiles = tmpTiles;
#  823|-> 	if (!allocOnly)
#  824|   		message->numTiles = WINPR_ASSERTING_INT_CAST(UINT16, count);
#  825|   	else

Error: GCC_ANALYZER_WARNING (CWE-401): [#def318]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1451:9: warning[-Wanalyzer-malloc-leak]: leak of ‘*message.tiles’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1422:6: enter_function: entry to ‘rfx_message_free’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1429:12: branch_true: following ‘true’ branch...
 branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1446:17: call_function: calling ‘rfx_allocate_tiles’ from ‘rfx_message_free’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1446:17: return_function: returning to ‘rfx_message_free’ from ‘rfx_allocate_tiles’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1451:9: danger: ‘*message.tiles’ leaks here; was allocated at [(6)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/5)
# 1449|   	const BOOL freeArray = message->freeArray;
# 1450|   	const RFX_MESSAGE empty = { 0 };
# 1451|-> 	*message = empty;
# 1452|   
# 1453|   	if (!freeArray)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def319]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1633:45: warning[-Wanalyzer-malloc-leak]: leak of ‘*priv.workObjects’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1625:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1628:52: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1628:22: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1628:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1631:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1633:45: danger: ‘*priv.workObjects’ leaks here; was allocated at [(3)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/2)
# 1631|   	priv->workObjects = (PTP_WORK*)pmem;
# 1632|   
# 1633|-> 	if (!(pmem = winpr_aligned_recalloc(priv->tileWorkParams, nbTiles,
# 1634|   	                                    sizeof(RFX_TILE_COMPOSE_WORK_PARAM), 32)))
# 1635|   		return FALSE;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def320]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1637:9: warning[-Wanalyzer-malloc-leak]: leak of ‘*priv.tileWorkParams’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1625:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1628:52: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1628:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1631:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1633:22: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1633:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1637:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1637:9: danger: ‘*priv.tileWorkParams’ leaks here; was allocated at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
# 1635|   		return FALSE;
# 1636|   
# 1637|-> 	priv->tileWorkParams = (RFX_TILE_COMPOSE_WORK_PARAM*)pmem;
# 1638|   	return TRUE;
# 1639|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def321]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1681:13: warning[-Wanalyzer-malloc-leak]: leak of ‘rfx_encode_message(context,  rects,  numRects,  data,  width,  height, (long unsigned int)scanline)’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2023:19: enter_function: entry to ‘rfx_encode_messages’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2033:13: call_function: calling ‘rfx_encode_message’ from ‘rfx_encode_messages’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2033:13: return_function: returning to ‘rfx_encode_messages’ from ‘rfx_encode_message’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2034:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2037:29: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2038:9: call_function: calling ‘rfx_message_free’ from ‘rfx_encode_messages’
# 1679|   	region16_init(&rectsRegion);
# 1680|   
# 1681|-> 	if (context->state == RFX_STATE_SEND_HEADERS)
# 1682|   		rfx_update_context_properties(context);
# 1683|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def322]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1681:13: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_calloc(1, 64, 32)’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1652:14: enter_function: entry to ‘rfx_encode_message’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1675:39: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1675:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1678:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1881:9: call_function: calling ‘rfx_message_free’ from ‘rfx_encode_message’
# 1679|   	region16_init(&rectsRegion);
# 1680|   
# 1681|-> 	if (context->state == RFX_STATE_SEND_HEADERS)
# 1682|   		rfx_update_context_properties(context);
# 1683|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def323]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1822:41: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘workParam’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1675:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1678:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1705:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1708:39: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1715:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1718:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1718:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1721:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1721:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1727:16: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1730:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1733:29: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1735:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1737:38: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1747:76: branch_true: following ‘true’ branch (when ‘yIdx <= endTileY’)...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1752:28: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1758:84: branch_true: following ‘true’ branch (when ‘xIdx <= endTileX’)...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1768:36: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1777:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1780:77: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1781:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1784:46: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1809:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1812:47: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1816:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1818:33: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1820:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1822:41: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:1822:41: danger: dereference of NULL ‘workParam’
# 1820|   				if (context->priv->UseThreads)
# 1821|   				{
# 1822|-> 					workParam->context = context;
# 1823|   					workParam->tile = tile;
# 1824|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def324]
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2017:9: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘msg’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2023:19: enter_function: entry to ‘rfx_encode_messages’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2033:13: call_function: calling ‘rfx_encode_message’ from ‘rfx_encode_messages’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2033:13: return_function: returning to ‘rfx_encode_messages’ from ‘rfx_encode_message’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2034:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2037:29: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2037:29: call_function: calling ‘rfx_split_message’ from ‘rfx_encode_messages’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2037:29: return_function: returning to ‘rfx_encode_messages’ from ‘rfx_split_message’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2038:9: call_function: calling ‘rfx_message_free’ from ‘rfx_encode_messages’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2038:9: return_function: returning to ‘rfx_encode_messages’ from ‘rfx_message_free’
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2039:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2042:16: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/codec/rfx.c:2042:16: call_function: inlined call to ‘rfx_message_list_new’ from ‘rfx_encode_messages’
# 2015|   	WINPR_ASSERT(msg);
# 2016|   
# 2017|-> 	msg->context = context;
# 2018|   	msg->count = count;
# 2019|   	msg->list = messages;

Error: CPPCHECK_WARNING (CWE-476): [#def325]
FreeRDP-3.12.0/libfreerdp/codec/rfx_dwt.c:158: warning[nullPointer]: Possible null pointer dereference: h
#  156|   
#  157|   			/* H */
#  158|-> 			*h = WINPR_ASSERTING_INT_CAST(
#  159|   			    int16_t, (src[total_width] -
#  160|   			              ((src[0] + src[n < subband_width - 1 ? 2 * total_width : 0]) >> 1)) >>

Error: COMPILER_WARNING: [#def326]
FreeRDP-3.12.0/libfreerdp/codec/sse/../../primitives/sse/prim_avxsse.h:65:16: note[note]: called from here
#   63|   {
#   64|   	const __m128i* mptr = WINPR_CXX_COMPAT_CAST(const __m128i*, ptr);
#   65|-> 	return _mm_lddqu_si128(mptr);
#   66|   }
#   67|   

Error: COMPILER_WARNING (CWE-704): [#def327]
FreeRDP-3.12.0/libfreerdp/codec/test/TestFreeRDPCodecProgressive.c:1389:62: warning[-Wdiscarded-qualifiers]: initialization discards ‘const’ qualifier from pointer target type
# 1387|   				for (size_t x = 0; x < nbRects; x++)
# 1388|   				{
# 1389|-> 					RECTANGLE_16* rect = &rects[x];
# 1390|   					const UINT32 w = rect->right - rect->left;
# 1391|   					const UINT32 h = rect->bottom - rect->top;

Error: GCC_ANALYZER_WARNING: [#def328]
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:157:17: warning[-Wanalyzer-overlapping-buffers]: overlapping buffers passed as arguments to ‘memcpy’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:417:5: enter_function: entry to ‘zgfx_decompress’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:436:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:439:9: call_function: inlined call to ‘stream_read_u8’ from ‘zgfx_decompress’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:441:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:443:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:443:22: call_function: calling ‘zgfx_decompress_segment’ from ‘zgfx_decompress’
#  155|   	if (zgfx->HistoryIndex + count <= zgfx->HistoryBufferSize)
#  156|   	{
#  157|-> 		CopyMemory(&(zgfx->HistoryBuffer[zgfx->HistoryIndex]), src, count);
#  158|   
#  159|   		if ((zgfx->HistoryIndex += count) == zgfx->HistoryBufferSize)

Error: GCC_ANALYZER_WARNING: [#def329]
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:165:17: warning[-Wanalyzer-overlapping-buffers]: overlapping buffers passed as arguments to ‘memcpy’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:417:5: enter_function: entry to ‘zgfx_decompress’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:436:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:439:9: call_function: inlined call to ‘stream_read_u8’ from ‘zgfx_decompress’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:441:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:443:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:443:22: call_function: calling ‘zgfx_decompress_segment’ from ‘zgfx_decompress’
#  163|   	{
#  164|   		const UINT32 front = zgfx->HistoryBufferSize - zgfx->HistoryIndex;
#  165|-> 		CopyMemory(&(zgfx->HistoryBuffer[zgfx->HistoryIndex]), src, front);
#  166|   		CopyMemory(zgfx->HistoryBuffer, &src[front], count - front);
#  167|   		zgfx->HistoryIndex = (UINT32)(count - front);

Error: GCC_ANALYZER_WARNING: [#def330]
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:193:17: warning[-Wanalyzer-overlapping-buffers]: overlapping buffers passed as arguments to ‘memcpy’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:417:5: enter_function: entry to ‘zgfx_decompress’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:436:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:439:9: call_function: inlined call to ‘stream_read_u8’ from ‘zgfx_decompress’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:441:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:443:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:443:22: call_function: calling ‘zgfx_decompress_segment’ from ‘zgfx_decompress’
#  191|   	if ((index + WINPR_ASSERTING_INT_CAST(uint32_t, bytes)) <= zgfx->HistoryBufferSize)
#  192|   	{
#  193|-> 		CopyMemory(dptr, &(zgfx->HistoryBuffer[index]), WINPR_ASSERTING_INT_CAST(size_t, bytes));
#  194|   	}
#  195|   	else

Error: GCC_ANALYZER_WARNING: [#def331]
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:198:17: warning[-Wanalyzer-overlapping-buffers]: overlapping buffers passed as arguments to ‘memcpy’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:417:5: enter_function: entry to ‘zgfx_decompress’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:436:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:439:9: call_function: inlined call to ‘stream_read_u8’ from ‘zgfx_decompress’
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:441:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:443:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/codec/zgfx.c:443:22: call_function: calling ‘zgfx_decompress_segment’ from ‘zgfx_decompress’
#  196|   	{
#  197|   		front = zgfx->HistoryBufferSize - index;
#  198|-> 		CopyMemory(dptr, &(zgfx->HistoryBuffer[index]), front);
#  199|   		CopyMemory(&dptr[front], zgfx->HistoryBuffer,
#  200|   		           WINPR_ASSERTING_INT_CAST(uint32_t, bytes) - front);

Error: GCC_ANALYZER_WARNING (CWE-416): [#def332]
FreeRDP-3.12.0/libfreerdp/common/assistance.c:131:14: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_assistance_file_free’ of ‘file’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1384:20: enter_function: entry to ‘freerdp_assistance_file_new’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1387:35: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1388:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1391:34: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1406:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1406:9: call_function: calling ‘freerdp_assistance_file_free’ from ‘freerdp_assistance_file_new’
#  129|   {
#  130|   	WINPR_ASSERT(file);
#  131|-> 	free(file->password);
#  132|   	file->password = NULL;
#  133|   	if (!password)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def333]
FreeRDP-3.12.0/libfreerdp/common/assistance.c:263:12: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1488:5: enter_function: entry to ‘freerdp_assistance_set_connection_string2’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1491:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1495:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1498:14: call_function: inlined call to ‘update_connectionstring2_nocopy’ from ‘freerdp_assistance_set_connection_string2’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1500:14: call_function: calling ‘update_password’ from ‘freerdp_assistance_set_connection_string2’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1500:14: return_function: returning to ‘freerdp_assistance_set_connection_string2’ from ‘update_password’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1500:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1502:16: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1502:16: call_function: calling ‘freerdp_assistance_parse_connection_string2’ from ‘freerdp_assistance_set_connection_string2’
#  261|   
#  262|   	const BOOL rc = ArrayList_Append(MachineAddresses, copy);
#  263|-> 	if (!rc)
#  264|   		free(copy);
#  265|   	// NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append takes ownership of copy

Error: GCC_ANALYZER_WARNING (CWE-401): [#def334]
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1406:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1388:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1391:34: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1392:30: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1395:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1396:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1406:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
# 1404|   	WINPR_PRAGMA_DIAG_PUSH
# 1405|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1406|-> 	freerdp_assistance_file_free(file);
# 1407|   	WINPR_PRAGMA_DIAG_POP
# 1408|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def335]
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1406:9: warning[-Wanalyzer-mismatching-deallocation]: ‘file’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_assistance_file_free’
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1387:35: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1388:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1391:34: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1395:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1396:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/assistance.c:1406:9: danger: deallocated with ‘freerdp_assistance_file_free’ here; allocation at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 1404|   	WINPR_PRAGMA_DIAG_PUSH
# 1405|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1406|-> 	freerdp_assistance_file_free(file);
# 1407|   	WINPR_PRAGMA_DIAG_POP
# 1408|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def336]
FreeRDP-3.12.0/libfreerdp/common/settings.c:351:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_device_new(*device.Type,  count, & args)’
FreeRDP-3.12.0/libfreerdp/common/settings.c:467:15: enter_function: entry to ‘freerdp_device_clone’
FreeRDP-3.12.0/libfreerdp/common/settings.c:494:12: branch_false: following ‘false’ branch (when ‘device’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:497:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:556:20: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:556:20: call_function: calling ‘freerdp_device_new’ from ‘freerdp_device_clone’
#  349|   	device.base->Type = Type;
#  350|   
#  351|-> 	if (count > 0)
#  352|   	{
#  353|   		device.base->Name = _strdup(args[0]);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def337]
FreeRDP-3.12.0/libfreerdp/common/settings.c:421:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/common/settings.c:346:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:348:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:351:12: branch_true: following ‘true’ branch (when ‘count != 0’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:353:37: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:353:37: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:354:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:357:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:360:36: branch_true: following ‘true’ branch (when ‘count != 1’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:362:70: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:363:44: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:364:49: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:421:9: danger: ‘<unknown>’ leaks here; was allocated at [(5)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/4)
#  419|   
#  420|   fail:
#  421|-> 	freerdp_device_free(device.base);
#  422|   	return NULL;
#  423|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def338]
FreeRDP-3.12.0/libfreerdp/common/settings.c:421:9: warning[-Wanalyzer-mismatching-deallocation]: ‘<unknown>’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_device_free’
FreeRDP-3.12.0/libfreerdp/common/settings.c:345:23: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/common/settings.c:346:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:348:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:351:12: branch_true: following ‘true’ branch (when ‘count != 0’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:353:37: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:354:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:355:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:421:9: danger: deallocated with ‘freerdp_device_free’ here; allocation at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  419|   
#  420|   fail:
#  421|-> 	freerdp_device_free(device.base);
#  422|   	return NULL;
#  423|   }

Error: GCC_ANALYZER_WARNING (CWE-416): [#def339]
FreeRDP-3.12.0/libfreerdp/common/settings.c:442:17: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_device_free’ of ‘device’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1683:6: enter_function: entry to ‘freerdp_settings_set_pointer_array’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1687:12: branch_false: following ‘false’ branch (when ‘settings’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1689:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1711:28: branch_false: following ‘false’ branch (when ‘offset < maxOffset’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1713:45: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1713:25: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1713:25: call_function: calling ‘freerdp_device_free’ from ‘freerdp_settings_set_pointer_array’
#  440|   	cnv.dev = device;
#  441|   
#  442|-> 	switch (device->Type)
#  443|   	{
#  444|   		case RDPDR_DTYP_PRINT:

Error: GCC_ANALYZER_WARNING (CWE-457): [#def340]
FreeRDP-3.12.0/libfreerdp/common/settings.c:442:17: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*device.Type’
FreeRDP-3.12.0/libfreerdp/common/settings.c:308:15: enter_function: entry to ‘freerdp_device_new’
FreeRDP-3.12.0/libfreerdp/common/settings.c:346:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:348:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:351:12: branch_true: following ‘true’ branch (when ‘count != 0’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:353:37: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:421:9: call_function: calling ‘freerdp_device_free’ from ‘freerdp_device_new’
#  440|   	cnv.dev = device;
#  441|   
#  442|-> 	switch (device->Type)
#  443|   	{
#  444|   		case RDPDR_DTYP_PRINT:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def341]
FreeRDP-3.12.0/libfreerdp/common/settings.c:497:13: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_device_clone(data)’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1683:6: enter_function: entry to ‘freerdp_settings_set_pointer_array’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1687:12: branch_false: following ‘false’ branch (when ‘settings’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1689:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1711:28: branch_false: following ‘false’ branch (when ‘offset < maxOffset’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1713:45: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1713:25: call_function: calling ‘freerdp_device_free’ from ‘freerdp_settings_set_pointer_array’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1713:25: return_function: returning to ‘freerdp_settings_set_pointer_array’ from ‘freerdp_device_free’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1714:57: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1714:57: call_function: calling ‘freerdp_device_clone’ from ‘freerdp_settings_set_pointer_array’
#  495|   		return NULL;
#  496|   
#  497|-> 	if (device->Name)
#  498|   	{
#  499|   		count = 1;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def342]
FreeRDP-3.12.0/libfreerdp/common/settings.c:782:13: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_addin_argv_free’ of ‘args’
FreeRDP-3.12.0/libfreerdp/common/settings.c:615:6: enter_function: entry to ‘freerdp_static_channel_collection_add’
FreeRDP-3.12.0/libfreerdp/common/settings.c:650:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:650:9: call_function: calling ‘freerdp_addin_argv_free’ from ‘freerdp_static_channel_collection_add’
#  780|   		return;
#  781|   
#  782|-> 	if (args->argv)
#  783|   	{
#  784|   		for (int index = 0; index < args->argc; index++)

Error: GCC_ANALYZER_WARNING (CWE-457): [#def343]
FreeRDP-3.12.0/libfreerdp/common/settings.c:782:13: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*args.argv’
FreeRDP-3.12.0/libfreerdp/common/settings.c:792:13: enter_function: entry to ‘freerdp_addin_argv_new’
FreeRDP-3.12.0/libfreerdp/common/settings.c:794:12: branch_false: following ‘false’ branch (when ‘argc <= 2147483647’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:797:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:798:12: branch_false: following ‘false’ branch (when ‘args’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:800:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:800:12: branch_false: following ‘false’ branch (when ‘argc != 0’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:803:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:805:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:806:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:822:9: call_function: calling ‘freerdp_addin_argv_free’ from ‘freerdp_addin_argv_new’
#  780|   		return;
#  781|   
#  782|-> 	if (args->argv)
#  783|   	{
#  784|   		for (int index = 0; index < args->argc; index++)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def344]
FreeRDP-3.12.0/libfreerdp/common/settings.c:794:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_addin_argv_new((long unsigned int)(unsigned int)*args.argc, *args.argv)’
FreeRDP-3.12.0/libfreerdp/common/settings.c:827:13: enter_function: entry to ‘freerdp_addin_argv_clone’
FreeRDP-3.12.0/libfreerdp/common/settings.c:834:12: branch_false: following ‘false’ branch (when ‘args’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:836:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:837:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:837:16: call_function: calling ‘freerdp_addin_argv_new’ from ‘freerdp_addin_argv_clone’
#  792|   ADDIN_ARGV* freerdp_addin_argv_new(size_t argc, const char* const argv[])
#  793|   {
#  794|-> 	if (argc > INT32_MAX)
#  795|   		return NULL;
#  796|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def345]
FreeRDP-3.12.0/libfreerdp/common/settings.c:800:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_addin_argv_new((long unsigned int)(unsigned int)*args.argc, *args.argv)’
FreeRDP-3.12.0/libfreerdp/common/settings.c:827:13: enter_function: entry to ‘freerdp_addin_argv_clone’
FreeRDP-3.12.0/libfreerdp/common/settings.c:834:12: branch_false: following ‘false’ branch (when ‘args’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:836:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:837:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:837:16: call_function: calling ‘freerdp_addin_argv_new’ from ‘freerdp_addin_argv_clone’
#  798|   	if (!args)
#  799|   		return NULL;
#  800|-> 	if (argc == 0)
#  801|   		return args;
#  802|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def346]
FreeRDP-3.12.0/libfreerdp/common/settings.c:803:22: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_addin_argv_new((long unsigned int)(unsigned int)*args.argc, *args.argv)’
FreeRDP-3.12.0/libfreerdp/common/settings.c:827:13: enter_function: entry to ‘freerdp_addin_argv_clone’
FreeRDP-3.12.0/libfreerdp/common/settings.c:834:12: branch_false: following ‘false’ branch (when ‘args’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:836:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:837:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:837:16: call_function: calling ‘freerdp_addin_argv_new’ from ‘freerdp_addin_argv_clone’
#  801|   		return args;
#  802|   
#  803|-> 	args->argc = (int)argc;
#  804|   	args->argv = (char**)calloc(argc, sizeof(char*));
#  805|   	if (!args->argv)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def347]
FreeRDP-3.12.0/libfreerdp/common/settings.c:822:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/common/settings.c:794:12: branch_false: following ‘false’ branch (when ‘argc <= 2147483647’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:797:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:798:12: branch_false: following ‘false’ branch (when ‘args’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:800:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:800:12: branch_false: following ‘false’ branch (when ‘argc != 0’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:803:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:804:30: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:805:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:808:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:808:12: branch_true: following ‘true’ branch (when ‘argv’ is non-NULL)...
 branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:810:36: branch_true: following ‘true’ branch (when ‘x < argc’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:812:53: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:813:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:814:33: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:822:9: danger: ‘<unknown>’ leaks here; was allocated at [(7)](sarif:/runs/0/results/12/codeFlows/0/threadFlows/0/locations/6)
#  820|   	WINPR_PRAGMA_DIAG_PUSH
#  821|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  822|-> 	freerdp_addin_argv_free(args);
#  823|   	WINPR_PRAGMA_DIAG_POP
#  824|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def348]
FreeRDP-3.12.0/libfreerdp/common/settings.c:822:9: warning[-Wanalyzer-mismatching-deallocation]: ‘args’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_addin_argv_free’
FreeRDP-3.12.0/libfreerdp/common/settings.c:794:12: branch_false: following ‘false’ branch (when ‘argc <= 2147483647’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:797:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:797:28: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/common/settings.c:798:12: branch_false: following ‘false’ branch (when ‘args’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:800:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:800:12: branch_false: following ‘false’ branch (when ‘argc != 0’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:803:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:805:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:806:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:822:9: danger: deallocated with ‘freerdp_addin_argv_free’ here; allocation at [(3)](sarif:/runs/0/results/13/codeFlows/0/threadFlows/0/locations/2) expects deallocation with ‘free’
#  820|   	WINPR_PRAGMA_DIAG_PUSH
#  821|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  822|-> 	freerdp_addin_argv_free(args);
#  823|   	WINPR_PRAGMA_DIAG_POP
#  824|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def349]
FreeRDP-3.12.0/libfreerdp/common/settings.c:836:17: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_addin_argv_clone(data)’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1683:6: enter_function: entry to ‘freerdp_settings_set_pointer_array’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1687:12: branch_false: following ‘false’ branch (when ‘settings’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1689:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1738:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1740:49: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1741:65: call_function: calling ‘freerdp_addin_argv_clone’ from ‘freerdp_settings_set_pointer_array’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1741:65: return_function: returning to ‘freerdp_settings_set_pointer_array’ from ‘freerdp_addin_argv_clone’
FreeRDP-3.12.0/libfreerdp/common/settings.c:836:17: danger: ‘freerdp_addin_argv_clone(data)’ leaks here; was allocated at [(16)](sarif:/runs/0/results/14/codeFlows/0/threadFlows/0/locations/15)
#  834|   	if (!args)
#  835|   		return NULL;
#  836|-> 	cnv.c = args->argv;
#  837|   	return freerdp_addin_argv_new(WINPR_ASSERTING_INT_CAST(uint32_t, args->argc), cnv.cc);
#  838|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def350]
FreeRDP-3.12.0/libfreerdp/common/settings.c:955:39: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(*<unknown>)’
FreeRDP-3.12.0/libfreerdp/common/settings.c:946:6: enter_function: entry to ‘freerdp_server_license_issuers_copy’
FreeRDP-3.12.0/libfreerdp/common/settings.c:951:14: call_function: calling ‘freerdp_settings_set_pointer_len’ from ‘freerdp_server_license_issuers_copy’
FreeRDP-3.12.0/libfreerdp/common/settings.c:951:14: return_function: returning to ‘freerdp_server_license_issuers_copy’ from ‘freerdp_settings_set_pointer_len’
FreeRDP-3.12.0/libfreerdp/common/settings.c:951:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:955:28: branch_true: following ‘true’ branch (when ‘x < count’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:957:47: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:957:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:958:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:960:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:955:39: danger: ‘_strdup(*<unknown>)’ leaks here; was allocated at [(36)](sarif:/runs/0/results/17/codeFlows/0/threadFlows/0/locations/35)
#  953|   		return FALSE;
#  954|   
#  955|-> 	for (UINT32 x = 0; x < count; x++)
#  956|   	{
#  957|   		char* issuer = _strdup(issuers[x]);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def351]
FreeRDP-3.12.0/libfreerdp/common/settings.c:1327:12: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1301:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1303:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1309:12: branch_false: following ‘false’ branch (when ‘len <= 4294967295’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1311:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1311:12: branch_false: following ‘false’ branch (when ‘len != 0’)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1313:16: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1313:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1314:12: branch_false: following ‘false’ branch (when ‘copy’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1316:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1316:12: branch_false: following ‘false’ branch (when ‘data’ is NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1318:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1319:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1327:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1327:12: danger: ‘copy’ leaks here; was allocated at [(7)](sarif:/runs/0/results/18/codeFlows/0/threadFlows/0/locations/6)
# 1325|   	// freerdp_settings_set_pointer takes ownership of copy
# 1326|   	//  NOLINTNEXTLINE(clang-analyzer-unix.Malloc)
# 1327|-> 	if (lenId == FreeRDP_UINT32_UNUSED)
# 1328|   		return TRUE;
# 1329|   	return freerdp_settings_set_uint32(settings, lenId, (UINT32)len);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def352]
FreeRDP-3.12.0/libfreerdp/common/settings.c:1329:16: warning[-Wanalyzer-malloc-leak]: leak of ‘copy’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1344:6: enter_function: entry to ‘freerdp_settings_set_pointer_len’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1354:12: branch_false: following ‘false’ branch (when ‘settings’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1357:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1391:32: call_function: calling ‘freerdp_settings_set_pointer_len_’ from ‘freerdp_settings_set_pointer_len’
# 1327|   	if (lenId == FreeRDP_UINT32_UNUSED)
# 1328|   		return TRUE;
# 1329|-> 	return freerdp_settings_set_uint32(settings, lenId, (UINT32)len);
# 1330|   }
# 1331|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def353]
FreeRDP-3.12.0/libfreerdp/common/settings.c:1722:32: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(data)’
FreeRDP-3.12.0/libfreerdp/common/settings.c:1687:12: branch_false: following ‘false’ branch (when ‘settings’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1689:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1718:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/common/settings.c:1720:30: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1721:64: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/common/settings.c:1722:32: danger: ‘_strdup(data)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/20/codeFlows/0/threadFlows/0/locations/6)
# 1720|   			free(settings->TargetNetAddresses[offset]);
# 1721|   			settings->TargetNetAddresses[offset] = _strdup((const char*)data);
# 1722|-> 			return settings->TargetNetAddresses[offset] != NULL;
# 1723|   		case FreeRDP_TargetNetPorts:
# 1724|   			maxOffset = freerdp_settings_get_uint32(settings, FreeRDP_TargetNetAddressCount);

Error: COMPILER_WARNING (CWE-563): [#def354]
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c: scope_hint: In function ‘freerdp_settings_set_int16’
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c:1610:11: warning[-Wunused-but-set-variable]: variable ‘cnv’ set but not used
# 1610 |         } cnv;
#      |           ^~~
# 1608|   		INT16 c;
# 1609|   		const INT16 cc;
# 1610|-> 	} cnv;
# 1611|   	WINPR_ASSERT(settings);
# 1612|   

Error: COMPILER_WARNING (CWE-1023): [#def355]
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c: scope_hint: In function ‘freerdp_settings_get_uint32’
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c:2006:17: warning[-Wswitch]: case value ‘395’ not in enumerated type ‘FreeRDP_Settings_Keys_UInt32’
# 2006 |                 case (FreeRDP_Settings_Keys_UInt32)FreeRDP_MonitorLocalShiftX:
#      |                 ^~~~
# 2004|   
# 2005|   		// API Compatibility section, remove with FreeRDP 4.x
# 2006|-> 		case (FreeRDP_Settings_Keys_UInt32)FreeRDP_MonitorLocalShiftX:
# 2007|   			return (UINT32)settings->MonitorLocalShiftX;
# 2008|   

Error: COMPILER_WARNING (CWE-1023): [#def356]
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c:2010:17: warning[-Wswitch]: case value ‘396’ not in enumerated type ‘FreeRDP_Settings_Keys_UInt32’
# 2010 |                 case (FreeRDP_Settings_Keys_UInt32)FreeRDP_MonitorLocalShiftY:
#      |                 ^~~~
# 2008|   
# 2009|   		// API Compatibility section, remove with FreeRDP 4.x
# 2010|-> 		case (FreeRDP_Settings_Keys_UInt32)FreeRDP_MonitorLocalShiftY:
# 2011|   			return (UINT32)settings->MonitorLocalShiftY;
# 2012|   

Error: COMPILER_WARNING (CWE-1023): [#def357]
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c: scope_hint: In function ‘freerdp_settings_set_uint32’
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c:2535:17: warning[-Wswitch]: case value ‘395’ not in enumerated type ‘FreeRDP_Settings_Keys_UInt32’
# 2535 |                 case FreeRDP_MonitorLocalShiftX:
#      |                 ^~~~
# 2533|   
# 2534|   		// API Compatibility section, remove with FreeRDP 4.x
# 2535|-> 		case FreeRDP_MonitorLocalShiftX:
# 2536|   			settings->MonitorLocalShiftX = (int32_t)cnv.c;
# 2537|   			break;

Error: COMPILER_WARNING (CWE-1023): [#def358]
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c:2540:17: warning[-Wswitch]: case value ‘396’ not in enumerated type ‘FreeRDP_Settings_Keys_UInt32’
# 2540 |                 case FreeRDP_MonitorLocalShiftY:
#      |                 ^~~~
# 2538|   
# 2539|   		// API Compatibility section, remove with FreeRDP 4.x
# 2540|-> 		case FreeRDP_MonitorLocalShiftY:
# 2541|   			settings->MonitorLocalShiftY = (int32_t)cnv.c;
# 2542|   			break;

Error: COMPILER_WARNING (CWE-563): [#def359]
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c: scope_hint: In function ‘freerdp_settings_set_int64’
FreeRDP-3.12.0/libfreerdp/common/settings_getters.c:2695:11: warning[-Wunused-but-set-variable]: variable ‘cnv’ set but not used
# 2695 |         } cnv;
#      |           ^~~
# 2693|   		INT64 c;
# 2694|   		const INT64 cc;
# 2695|-> 	} cnv;
# 2696|   	WINPR_ASSERT(settings);
# 2697|   

Error: CPPCHECK_WARNING (CWE-664): [#def360]
FreeRDP-3.12.0/libfreerdp/core/aad.c:62: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#   60|   static SSIZE_T stream_sprintf(wStream* s, WINPR_FORMAT_ARG const char* fmt, ...)
#   61|   {
#   62|-> 	va_list ap = { 0 };
#   63|   	va_start(ap, fmt);
#   64|   	const int rc = vsnprintf(NULL, 0, fmt, ap);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def361]
FreeRDP-3.12.0/libfreerdp/core/aad.c:788:9: warning[-Wanalyzer-mismatching-deallocation]: ‘aad’ should have been deallocated with ‘free’ but was deallocated with ‘aad_free’
FreeRDP-3.12.0/libfreerdp/core/aad.c:772:32: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/aad.c:774:12: branch_false: following ‘false’ branch (when ‘aad’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/aad.c:777:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/aad.c:779:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/aad.c:780:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/aad.c:788:9: danger: deallocated with ‘aad_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  786|   	WINPR_PRAGMA_DIAG_PUSH
#  787|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  788|-> 	aad_free(aad);
#  789|   	WINPR_PRAGMA_DIAG_POP
#  790|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def362]
FreeRDP-3.12.0/libfreerdp/core/aad.c:798:14: warning[-Wanalyzer-use-after-free]: use after ‘aad_free’ of ‘aad’
FreeRDP-3.12.0/libfreerdp/core/aad.c:767:9: enter_function: entry to ‘aad_new’
FreeRDP-3.12.0/libfreerdp/core/aad.c:772:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/aad.c:774:12: branch_false: following ‘false’ branch (when ‘aad’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/aad.c:777:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/aad.c:779:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/aad.c:780:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/aad.c:788:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/aad.c:788:9: call_function: calling ‘aad_free’ from ‘aad_new’
#  796|   		return;
#  797|   
#  798|-> 	free(aad->hostname);
#  799|   	free(aad->scope);
#  800|   	free(aad->nonce);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def363]
FreeRDP-3.12.0/libfreerdp/core/aad.c:995:20: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_utils_aad_get_wellknown(*aad.log,  freerdp_settings_get_string(*aad_15(D)->rdpcontext.settings, 2014), tenantid)’
FreeRDP-3.12.0/libfreerdp/core/aad.c:858:6: enter_function: entry to ‘aad_fetch_wellknown’
FreeRDP-3.12.0/libfreerdp/core/aad.c:866:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/aad.c:870:41: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/aad.c:877:26: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/aad.c:877:26: call_function: calling ‘freerdp_utils_aad_get_wellknown’ from ‘aad_fetch_wellknown’
#  993|   	size_t response_length = 0;
#  994|   	const BOOL rc = freerdp_http_request(str, NULL, &resp_code, &response, &response_length);
#  995|-> 	if (!rc || (resp_code != HTTP_STATUS_OK))
#  996|   	{
#  997|   		WLog_Print(log, WLOG_ERROR, "request for '%s' failed with: %s", str,

Error: COMPILER_WARNING (CWE-563): [#def364]
FreeRDP-3.12.0/libfreerdp/core/activation.c:754:22: warning[-Wunused-but-set-variable]: variable ‘settings’ set but not used
#  754 |         rdpSettings* settings = NULL;
#      |                      ^~~~~~~~
#  752|   BOOL rdp_server_accept_client_font_list_pdu(rdpRdp* rdp, wStream* s)
#  753|   {
#  754|-> 	rdpSettings* settings = NULL;
#  755|   	freerdp_peer* peer = NULL;
#  756|   

Error: COMPILER_WARNING (CWE-563): [#def365]
FreeRDP-3.12.0/libfreerdp/core/activation.c: scope_hint: In function ‘rdp_server_accept_client_font_list_pdu’
FreeRDP-3.12.0/libfreerdp/core/activation.c:755:23: warning[-Wunused-but-set-variable]: variable ‘peer’ set but not used
#  755 |         freerdp_peer* peer = NULL;
#      |                       ^~~~
#  753|   {
#  754|   	rdpSettings* settings = NULL;
#  755|-> 	freerdp_peer* peer = NULL;
#  756|   
#  757|   	WINPR_ASSERT(rdp);

Error: COMPILER_WARNING (CWE-1164): [#def366]
FreeRDP-3.12.0/libfreerdp/core/capabilities.c: scope_hint: At top level
FreeRDP-3.12.0/libfreerdp/core/capabilities.c:2410:13: warning[-Wunused-function]: ‘rdp_write_draw_gdiplus_cache_capability_set’ defined but not used
# 2410 | static BOOL rdp_write_draw_gdiplus_cache_capability_set(wStream* s, const rdpSettings* settings)
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2408|    */
# 2409|   
# 2410|-> static BOOL rdp_write_draw_gdiplus_cache_capability_set(wStream* s, const rdpSettings* settings)
# 2411|   {
# 2412|   	WINPR_ASSERT(settings);

Error: COMPILER_WARNING (CWE-563): [#def367]
FreeRDP-3.12.0/libfreerdp/core/capabilities.c: scope_hint: In function ‘rdp_recv_demand_active’
FreeRDP-3.12.0/libfreerdp/core/capabilities.c:4548:22: warning[-Wunused-variable]: unused variable ‘SessionId’
# 4548 |         const UINT32 SessionId = Stream_Get_UINT32(s); /* SessionId */
#      |                      ^~~~~~~~~
# 4546|   		return FALSE;
# 4547|   
# 4548|-> 	const UINT32 SessionId = Stream_Get_UINT32(s); /* SessionId */
# 4549|   
# 4550|   	{

Error: GCC_ANALYZER_WARNING (CWE-126): [#def368]
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:25: warning[-Wanalyzer-out-of-bounds]: stack-based buffer over-read
FreeRDP-3.12.0/libfreerdp/core/childsession.c:140:12: branch_false: following ‘false’ branch (when ‘buf’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:143:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:222:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:224:27: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:227:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:227:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:227:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:25: danger: out-of-bounds read from byte 32 till byte 39 but ‘chunks’ ends at byte 32
#  227|   		for (int i = 0; i < nchunks; i++)
#  228|   		{
#  229|-> 			memcpy(buf, chunks[i].data, chunks[i].size);
#  230|   			buf += chunks[i].size;
#  231|   		}

Error: GCC_ANALYZER_WARNING (CWE-126): [#def369]
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:37: warning[-Wanalyzer-out-of-bounds]: stack-based buffer over-read
FreeRDP-3.12.0/libfreerdp/core/childsession.c:140:12: branch_false: following ‘false’ branch (when ‘buf’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:143:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:222:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:224:27: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:227:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:227:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:227:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:229:37: danger: out-of-bounds read from byte 40 till byte 47 but ‘chunks’ ends at byte 32
#  227|   		for (int i = 0; i < nchunks; i++)
#  228|   		{
#  229|-> 			memcpy(buf, chunks[i].data, chunks[i].size);
#  230|   			buf += chunks[i].size;
#  231|   		}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def370]
FreeRDP-3.12.0/libfreerdp/core/childsession.c:513:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileW(&pipePath, 3221225472, 0, 0, 3, 1073741824, 0)’
FreeRDP-3.12.0/libfreerdp/core/childsession.c:453:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:459:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:471:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:473:15: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:478:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:484:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:485:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/childsession.c:491:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:511:20: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/childsession.c:513:12: danger: ‘CreateFileW(&pipePath, 3221225472, 0, 0, 3, 1073741824, 0)’ leaks here; was allocated at [(9)](sarif:/runs/0/results/25/codeFlows/0/threadFlows/0/locations/8)
#  511|   	HANDLE f = CreateFileW(pipePath, GENERIC_READ | GENERIC_WRITE, 0, NULL, OPEN_EXISTING,
#  512|   	                       FILE_FLAG_OVERLAPPED, NULL);
#  513|-> 	if (f == INVALID_HANDLE_VALUE)
#  514|   	{
#  515|   		WLog_ERR(TAG, "error when connecting to local named pipe");

Error: GCC_ANALYZER_WARNING (CWE-416): [#def371]
FreeRDP-3.12.0/libfreerdp/core/codecs.c:36:21: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_client_codecs_free’ of ‘codecs’
FreeRDP-3.12.0/libfreerdp/core/codecs.c:251:6: enter_function: entry to ‘codecs_free’
FreeRDP-3.12.0/libfreerdp/core/codecs.c:253:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/codecs.c:253:9: call_function: calling ‘freerdp_client_codecs_free’ from ‘codecs_free’
#   34|   	if (flags & FREERDP_CODEC_REMOTEFX)
#   35|   	{
#   36|-> 		if (codecs->rfx)
#   37|   		{
#   38|   			rfx_context_free(codecs->rfx);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def372]
FreeRDP-3.12.0/libfreerdp/core/codecs.c:260:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_client_codecs_new(freerdp_settings_get_uint32(*context.settings, 64))’
FreeRDP-3.12.0/libfreerdp/core/codecs.c:242:12: enter_function: entry to ‘codecs_new’
FreeRDP-3.12.0/libfreerdp/core/codecs.c:244:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/codecs.c:248:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/codecs.c:248:16: call_function: calling ‘freerdp_client_codecs_new’ from ‘codecs_new’
#  258|   	rdpCodecs* codecs = (rdpCodecs*)calloc(1, sizeof(rdpCodecs));
#  259|   
#  260|-> 	if (!codecs)
#  261|   		return NULL;
#  262|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def373]
FreeRDP-3.12.0/libfreerdp/core/codecs.c:263:9: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_client_codecs_new(freerdp_settings_get_uint32(*context.settings, 64))’
FreeRDP-3.12.0/libfreerdp/core/codecs.c:242:12: enter_function: entry to ‘codecs_new’
FreeRDP-3.12.0/libfreerdp/core/codecs.c:244:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/codecs.c:248:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/codecs.c:248:16: call_function: calling ‘freerdp_client_codecs_new’ from ‘codecs_new’
#  261|   		return NULL;
#  262|   
#  263|-> 	codecs->ThreadingFlags = ThreadingFlags;
#  264|   
#  265|   	return codecs;

Error: CPPCHECK_WARNING (CWE-664): [#def374]
FreeRDP-3.12.0/libfreerdp/core/freerdp.c:1307: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
# 1305|   void setChannelError(rdpContext* context, UINT errorNum, WINPR_FORMAT_ARG const char* format, ...)
# 1306|   {
# 1307|-> 	va_list ap = { 0 };
# 1308|   	va_start(ap, format);
# 1309|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def375]
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:181:16: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_utils_aad_get_wellknown(*arm.log,  freerdp_settings_get_string(*arm_15(D)->context.settings, 2014), tenantid)’
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1066:6: enter_function: entry to ‘arm_resolve_endpoint’
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1073:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1076:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1076:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1079:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1079:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1080:42: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1079:13: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1086:23: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1086:23: call_function: calling ‘arm_new’ from ‘arm_resolve_endpoint’
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1086:23: return_function: returning to ‘arm_resolve_endpoint’ from ‘arm_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1087:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1090:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1094:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1117:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/arm.c:1117:22: call_function: calling ‘arm_handle_request’ from ‘arm_resolve_endpoint’
#  179|   
#  180|   	rdp->wellknown = freerdp_utils_aad_get_wellknown(arm->log, base, tenantid);
#  181|-> 	return rdp->wellknown ? TRUE : FALSE;
#  182|   }
#  183|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def376]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:165:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘http_context_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:142:46: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:143:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:146:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:147:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:148:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:165:9: danger: deallocated with ‘http_context_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  163|   	WINPR_PRAGMA_DIAG_PUSH
#  164|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  165|-> 	http_context_free(context);
#  166|   	WINPR_PRAGMA_DIAG_POP
#  167|   	return NULL;

Error: CPPCHECK_WARNING (CWE-664): [#def377]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:349: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  347|   	context->Pragma = NULL;
#  348|   
#  349|-> 	va_list ap = { 0 };
#  350|   	va_start(ap, Pragma);
#  351|   	return list_append(context, Pragma, ap);

Error: CPPCHECK_WARNING (CWE-664): [#def378]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:351: error[va_end_missing]: va_list 'ap' was opened but not closed by va_end().
#  349|   	va_list ap = { 0 };
#  350|   	va_start(ap, Pragma);
#  351|-> 	return list_append(context, Pragma, ap);
#  352|   }
#  353|   

Error: CPPCHECK_WARNING (CWE-664): [#def379]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:360: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  358|   		return FALSE;
#  359|   
#  360|-> 	va_list ap = { 0 };
#  361|   	va_start(ap, Pragma);
#  362|   	return list_append(context, Pragma, ap);

Error: CPPCHECK_WARNING (CWE-664): [#def380]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:362: error[va_end_missing]: va_list 'ap' was opened but not closed by va_end().
#  360|   	va_list ap = { 0 };
#  361|   	va_start(ap, Pragma);
#  362|-> 	return list_append(context, Pragma, ap);
#  363|   }
#  364|   

Error: GCC_ANALYZER_WARNING (CWE-416): [#def381]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:467:22: warning[-Wanalyzer-use-after-free]: use after ‘http_context_free’ of ‘context’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:140:14: enter_function: entry to ‘http_context_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:142:46: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:143:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:146:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:165:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:165:9: call_function: calling ‘http_context_free’ from ‘http_context_new’
#  465|   	if (context)
#  466|   	{
#  467|-> 		free(context->SecWebsocketKey);
#  468|   		free(context->UserAgent);
#  469|   		free(context->X_MS_UserAgent);

Error: CPPCHECK_WARNING (CWE-664): [#def382]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:555: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  553|   {
#  554|   	char* str = NULL;
#  555|-> 	va_list ap = { 0 };
#  556|   	int length = 0;
#  557|   	int used = 0;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def383]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1522:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1421:15: enter_function: entry to ‘http_response_recv’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1424:34: call_function: calling ‘http_response_new’ from ‘http_response_recv’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1424:34: return_function: returning to ‘http_response_recv’ from ‘http_response_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1426:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1429:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1431:39: call_function: calling ‘http_response_recv_line’ from ‘http_response_recv’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1431:39: return_function: returning to ‘http_response_recv’ from ‘http_response_recv_line’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1432:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1433:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1522:9: danger: ‘<unknown>’ leaks here; was allocated at [(24)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/23)
# 1520|   	return response;
# 1521|   out_error:
# 1522|-> 	http_response_free(response);
# 1523|   	return NULL;
# 1524|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def384]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1522:9: warning[-Wanalyzer-mismatching-deallocation]: ‘http_response_new()’ should have been deallocated with ‘free’ but was deallocated with ‘http_response_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1421:15: enter_function: entry to ‘http_response_recv’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1424:34: call_function: calling ‘http_response_new’ from ‘http_response_recv’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1424:34: return_function: returning to ‘http_response_recv’ from ‘http_response_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1426:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1429:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1431:39: call_function: calling ‘http_response_recv_line’ from ‘http_response_recv’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1431:39: return_function: returning to ‘http_response_recv’ from ‘http_response_recv_line’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1522:9: danger: deallocated with ‘http_response_free’ here; allocation at [(4)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘free’
# 1520|   	return response;
# 1521|   out_error:
# 1522|-> 	http_response_free(response);
# 1523|   	return NULL;
# 1524|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def385]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1550:12: warning[-Wanalyzer-malloc-leak]: leak of ‘http_response_new()’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1421:15: enter_function: entry to ‘http_response_recv’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1424:34: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1424:34: call_function: calling ‘http_response_new’ from ‘http_response_recv’
# 1548|   	HttpResponse* response = (HttpResponse*)calloc(1, sizeof(HttpResponse));
# 1549|   
# 1550|-> 	if (!response)
# 1551|   		return NULL;
# 1552|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def386]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1574:9: warning[-Wanalyzer-malloc-leak]: leak of ‘http_response_new()’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1421:15: enter_function: entry to ‘http_response_recv’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1424:34: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1424:34: call_function: calling ‘http_response_new’ from ‘http_response_recv’
# 1572|   		goto fail;
# 1573|   
# 1574|-> 	response->TransferEncoding = TransferEncodingIdentity;
# 1575|   	return response;
# 1576|   fail:

Error: GCC_ANALYZER_WARNING (CWE-762): [#def387]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1579:9: warning[-Wanalyzer-mismatching-deallocation]: ‘response’ should have been deallocated with ‘free’ but was deallocated with ‘http_response_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1548:49: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1550:12: branch_false: following ‘false’ branch (when ‘response’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1553:35: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1555:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1556:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1579:9: danger: deallocated with ‘http_response_free’ here; allocation at [(1)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 1577|   	WINPR_PRAGMA_DIAG_PUSH
# 1578|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1579|-> 	http_response_free(response);
# 1580|   	WINPR_PRAGMA_DIAG_POP
# 1581|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def388]
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1589:21: warning[-Wanalyzer-use-after-free]: use after ‘http_response_free’ of ‘response’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1546:15: enter_function: entry to ‘http_response_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1548:49: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1550:12: branch_false: following ‘false’ branch (when ‘response’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1553:35: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1579:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/http.c:1579:9: call_function: calling ‘http_response_free’ from ‘http_response_new’
# 1587|   		return;
# 1588|   
# 1589|-> 	free((void*)response->lines);
# 1590|   	ListDictionary_Free(response->Authenticates);
# 1591|   	ListDictionary_Free(response->SetCookie);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def389]
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2243:9: warning[-Wanalyzer-mismatching-deallocation]: ‘rdg’ should have been deallocated with ‘free’ but was deallocated with ‘rdg_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2152:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2155:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2155:32: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2156:12: branch_false: following ‘false’ branch (when ‘rdg’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2159:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2173:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2174:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2243:9: danger: deallocated with ‘rdg_free’ here; allocation at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2) expects deallocation with ‘free’
# 2241|   	WINPR_PRAGMA_DIAG_PUSH
# 2242|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2243|-> 	rdg_free(rdg);
# 2244|   	WINPR_PRAGMA_DIAG_POP
# 2245|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def390]
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2253:9: warning[-Wanalyzer-use-after-free]: use after ‘rdg_free’ of ‘rdg’
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2150:9: enter_function: entry to ‘rdg_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2152:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2155:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2155:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2156:12: branch_false: following ‘false’ branch (when ‘rdg’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2159:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2243:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:2243:9: call_function: calling ‘rdg_free’ from ‘rdg_new’
# 2251|   		return;
# 2252|   
# 2253|-> 	freerdp_tls_free(rdg->tlsOut);
# 2254|   	freerdp_tls_free(rdg->tlsIn);
# 2255|   	http_context_free(rdg->http);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def391]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:510:13: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_out_channel_new(rpc, &*connection.Cookie)’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:679:30: enter_function: entry to ‘rpc_virtual_connection_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:686:12: branch_false: following ‘false’ branch (when ‘connection’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:689:36: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:693:40: call_function: calling ‘rpc_in_channel_new’ from ‘rpc_virtual_connection_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:693:40: return_function: returning to ‘rpc_virtual_connection_new’ from ‘rpc_in_channel_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:695:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:698:41: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:698:41: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:698:41: call_function: calling ‘rpc_out_channel_new’ from ‘rpc_virtual_connection_new’
#  508|   	UINT32 timeout = 0;
#  509|   
#  510|-> 	if (!client || !channel || !inout || !client->context || !client->context->settings)
#  511|   		return -1;
#  512|   

Error: GCC_ANALYZER_WARNING (CWE-416): [#def392]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:604:9: warning[-Wanalyzer-use-after-free]: use after ‘rpc_channel_free’ of ‘channel’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:663:13: enter_function: entry to ‘rpc_virtual_connection_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:665:12: branch_false: following ‘false’ branch (when ‘connection’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:668:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:668:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:669:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:669:17: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:669:17: call_function: calling ‘rpc_channel_free’ from ‘rpc_virtual_connection_free’
#  602|   		return;
#  603|   
#  604|-> 	credssp_auth_free(channel->auth);
#  605|   	http_context_free(channel->http);
#  606|   	freerdp_tls_free(channel->tls);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def393]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:648:16: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_out_channel_new(rpc, &*connection.Cookie)’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:679:30: enter_function: entry to ‘rpc_virtual_connection_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:686:12: branch_false: following ‘false’ branch (when ‘connection’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:689:36: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:693:40: call_function: calling ‘rpc_in_channel_new’ from ‘rpc_virtual_connection_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:693:40: return_function: returning to ‘rpc_virtual_connection_new’ from ‘rpc_in_channel_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:695:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:698:41: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:698:41: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:698:41: call_function: calling ‘rpc_out_channel_new’ from ‘rpc_virtual_connection_new’
#  646|   	}
#  647|   
#  648|-> 	return outChannel;
#  649|   }
#  650|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def394]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:963:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:924:12: branch_false: following ‘false’ branch (when ‘rpc’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:927:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:931:21: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:933:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:936:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:956:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:957:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:963:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/2)
#  961|   	WINPR_PRAGMA_DIAG_PUSH
#  962|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  963|-> 	rpc_free(rpc);
#  964|   	WINPR_PRAGMA_DIAG_POP
#  965|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def395]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:963:9: warning[-Wanalyzer-mismatching-deallocation]: ‘rpc’ should have been deallocated with ‘free’ but was deallocated with ‘rpc_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:922:24: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:924:12: branch_false: following ‘false’ branch (when ‘rpc’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:927:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:933:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:934:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:963:9: danger: deallocated with ‘rpc_free’ here; allocation at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  961|   	WINPR_PRAGMA_DIAG_PUSH
#  962|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  963|-> 	rpc_free(rpc);
#  964|   	WINPR_PRAGMA_DIAG_POP
#  965|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def396]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:972:17: warning[-Wanalyzer-use-after-free]: use after ‘rpc_free’ of ‘rpc’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:915:9: enter_function: entry to ‘rpc_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:922:24: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:924:12: branch_false: following ‘false’ branch (when ‘rpc’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:927:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:963:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc.c:963:9: call_function: calling ‘rpc_free’ from ‘rpc_new’
#  970|   	if (rpc)
#  971|   	{
#  972|-> 		rpc_client_free(rpc->client);
#  973|   		credssp_auth_free(rpc->auth);
#  974|   		rpc_virtual_connection_free(rpc->VirtualConnection);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def397]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:273:31: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(bind_pdu.header.call_id, 0)’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:200:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:203:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:219:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:223:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:230:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:233:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:243:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:246:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:262:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:265:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:265:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:268:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:268:22: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:270:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:273:31: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:273:31: danger: ‘rpc_client_call_new(bind_pdu.header.call_id, 0)’ leaks here; was allocated at [(13)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/12)
#  271|   		goto fail;
#  272|   
#  273|-> 	if (!ArrayList_Append(rpc->client->ClientCallList, clientCall))
#  274|   	{
#  275|   		rpc_client_call_free(clientCall);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def398]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:434:12: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(auth_3_pdu.header.call_id, 0)’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:398:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:401:29: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:426:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:429:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:429:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:432:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:432:22: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_bind.c:434:12: danger: ‘rpc_client_call_new(auth_3_pdu.header.call_id, 0)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/6)
#  432|   	clientCall = rpc_client_call_new(auth_3_pdu.header.call_id, 0);
#  433|   
#  434|-> 	if (ArrayList_Append(rpc->client->ClientCallList, clientCall))
#  435|   	{
#  436|   		Stream_SealLength(buffer);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def399]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:961:12: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1020:6: enter_function: entry to ‘rpc_client_write_call’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1034:12: branch_false: following ‘false’ branch (when ‘s’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1037:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1037:12: branch_false: following ‘false’ branch (when ‘rpc’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1040:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1043:12: branch_false: following ‘false’ branch (when ‘auth’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1049:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1049:12: branch_false: following ‘false’ branch (when ‘connection’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1052:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1054:12: branch_false: following ‘false’ branch (when ‘inChannel’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1057:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1059:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1062:30: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1072:22: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1072:22: call_function: calling ‘rpc_client_call_new’ from ‘rpc_client_write_call’
#  959|   	clientCall = (RpcClientCall*)calloc(1, sizeof(RpcClientCall));
#  960|   
#  961|-> 	if (!clientCall)
#  962|   		return NULL;
#  963|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def400]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:966:9: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1020:6: enter_function: entry to ‘rpc_client_write_call’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1034:12: branch_false: following ‘false’ branch (when ‘s’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1037:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1037:12: branch_false: following ‘false’ branch (when ‘rpc’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1040:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1043:12: branch_false: following ‘false’ branch (when ‘auth’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1049:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1049:12: branch_false: following ‘false’ branch (when ‘connection’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1052:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1054:12: branch_false: following ‘false’ branch (when ‘inChannel’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1057:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1059:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1062:30: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1072:22: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1072:22: call_function: calling ‘rpc_client_call_new’ from ‘rpc_client_write_call’
#  964|   	clientCall->CallId = CallId;
#  965|   	clientCall->OpNum = OpNum;
#  966|-> 	clientCall->State = RPC_CLIENT_CALL_STATE_SEND_PDUS;
#  967|   	return clientCall;
#  968|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def401]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1077:31: warning[-Wanalyzer-malloc-leak]: leak of ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1020:6: enter_function: entry to ‘rpc_client_write_call’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1034:12: branch_false: following ‘false’ branch (when ‘s’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1037:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1037:12: branch_false: following ‘false’ branch (when ‘rpc’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1040:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1043:12: branch_false: following ‘false’ branch (when ‘auth’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1049:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1049:12: branch_false: following ‘false’ branch (when ‘connection’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1052:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1054:12: branch_false: following ‘false’ branch (when ‘inChannel’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1057:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1059:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1062:30: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1072:22: call_function: calling ‘rpc_client_call_new’ from ‘rpc_client_write_call’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1072:22: return_function: returning to ‘rpc_client_write_call’ from ‘rpc_client_call_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1074:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1077:31: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1077:31: danger: ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’ leaks here; was allocated at [(16)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/15)
# 1075|   		goto fail;
# 1076|   
# 1077|-> 	if (!ArrayList_Append(rpc->client->ClientCallList, clientCall))
# 1078|   	{
# 1079|   		rpc_client_call_free(clientCall);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def402]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1079:17: warning[-Wanalyzer-mismatching-deallocation]: ‘rpc_client_call_new(*rpc.CallId, (unsigned int)opnum)’ should have been deallocated with ‘free’ but was deallocated with ‘rpc_client_call_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1020:6: enter_function: entry to ‘rpc_client_write_call’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1034:12: branch_false: following ‘false’ branch (when ‘s’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1037:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1037:12: branch_false: following ‘false’ branch (when ‘rpc’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1040:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1043:12: branch_false: following ‘false’ branch (when ‘auth’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1049:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1049:12: branch_false: following ‘false’ branch (when ‘connection’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1052:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1054:12: branch_false: following ‘false’ branch (when ‘inChannel’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1057:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1059:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1062:30: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1072:22: call_function: calling ‘rpc_client_call_new’ from ‘rpc_client_write_call’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1072:22: return_function: returning to ‘rpc_client_write_call’ from ‘rpc_client_call_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1074:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1077:31: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1077:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1079:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1079:17: danger: deallocated with ‘rpc_client_call_free’ here; allocation at [(16)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/15) expects deallocation with ‘free’
# 1077|   	if (!ArrayList_Append(rpc->client->ClientCallList, clientCall))
# 1078|   	{
# 1079|-> 		rpc_client_call_free(clientCall);
# 1080|   		goto fail;
# 1081|   	}

Error: GCC_ANALYZER_WARNING (CWE-762): [#def403]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1220:9: warning[-Wanalyzer-mismatching-deallocation]: ‘client’ should have been deallocated with ‘free’ but was deallocated with ‘rpc_client_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1171:12: enter_function: entry to ‘rpc_client_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1174:41: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1176:12: branch_false: following ‘false’ branch (when ‘client’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1179:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1179:14: call_function: calling ‘rpc_client_resolve_gateway’ from ‘rpc_client_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1179:14: return_function: returning to ‘rpc_client_new’ from ‘rpc_client_resolve_gateway’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1179:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1181:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1220:9: danger: deallocated with ‘rpc_client_free’ here; allocation at [(2)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
# 1218|   	WINPR_PRAGMA_DIAG_PUSH
# 1219|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1220|-> 	rpc_client_free(client);
# 1221|   	WINPR_PRAGMA_DIAG_POP
# 1222|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def404]
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1230:14: warning[-Wanalyzer-use-after-free]: use after ‘rpc_client_free’ of ‘client’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1171:12: enter_function: entry to ‘rpc_client_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1174:41: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1176:12: branch_false: following ‘false’ branch (when ‘client’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1179:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1179:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1181:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1220:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/rpc_client.c:1220:9: call_function: calling ‘rpc_client_free’ from ‘rpc_client_new’
# 1228|   		return;
# 1229|   
# 1230|-> 	free(client->host);
# 1231|   
# 1232|   	if (client->ReceiveFragment)

Error: GCC_ANALYZER_WARNING (CWE-476): [#def405]
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:335:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘tunnelContext’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:2349:6: enter_function: entry to ‘tsg_recv_pdu’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:2551:30: call_function: calling ‘TsProxyCloseChannelReadResponse’ from ‘tsg_recv_pdu’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:2551:30: return_function: returning to ‘tsg_recv_pdu’ from ‘TsProxyCloseChannelReadResponse’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:2551:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:2557:30: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:2557:30: call_function: calling ‘tsg_transition_to_state’ from ‘tsg_recv_pdu’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:2557:30: return_function: returning to ‘tsg_recv_pdu’ from ‘tsg_transition_to_state’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:2560:30: call_function: calling ‘TsProxyCloseChannelWriteRequest’ from ‘tsg_recv_pdu’
#  333|   		return FALSE;
#  334|   
#  335|-> 	Stream_Write_UINT32(s, tunnelContext->ContextType); /* ContextType (4 bytes) */
#  336|   	Stream_Write(s, &tunnelContext->ContextUuid,
#  337|   	             sizeof(tunnelContext->ContextUuid)); /* ContextUuid (16 bytes) */

Error: COMPILER_WARNING (CWE-563): [#def406]
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_tsg_caps’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:510:16: warning[-Wunused-but-set-variable]: variable ‘count’ set but not used
#  510 |         UINT32 count = 0;
#      |                ^~~~~
#  508|   {
#  509|   	UINT32 capabilityType = 0;
#  510|-> 	UINT32 count = 0;
#  511|   	WINPR_ASSERT(caps);
#  512|   

Error: COMPILER_WARNING (CWE-563): [#def407]
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:699:16: warning[-Wunused-but-set-variable]: variable ‘MaxOffsetValue’ set but not used
#  699 |         UINT32 MaxOffsetValue = 0;
#      |                ^~~~~~~~~~~~~~
#  697|   	UINT32 ResponseDataPtr = 0;
#  698|   	UINT32 MaxSizeValue = 0;
#  699|-> 	UINT32 MaxOffsetValue = 0;
#  700|   	UINT32 idleTimeout = 0;
#  701|   

Error: COMPILER_WARNING (CWE-563): [#def408]
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_packet_response’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:700:16: warning[-Wunused-but-set-variable]: variable ‘idleTimeout’ set but not used
#  700 |         UINT32 idleTimeout = 0;
#      |                ^~~~~~~~~~~
#  698|   	UINT32 MaxSizeValue = 0;
#  699|   	UINT32 MaxOffsetValue = 0;
#  700|-> 	UINT32 idleTimeout = 0;
#  701|   
#  702|   	WINPR_ASSERT(response);

Error: CPPCHECK_WARNING (CWE-664): [#def409]
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:770: error[va_list_usedBeforeStarted]: va_list 'ap' used before va_start() was called.
#  768|   {
#  769|   	int rc = 0;
#  770|-> 	va_list ap = { 0 };
#  771|   	if (!buffer || !len || !fmt)
#  772|   		return FALSE;

Error: COMPILER_WARNING (CWE-563): [#def410]
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:1534:16: warning[-Wunused-but-set-variable]: variable ‘MsgId’ set but not used
# 1534 |         UINT32 MsgId = 0;
#      |                ^~~~~
# 1532|   	UINT32 PacketQuarResponsePtr = 0;
# 1533|   	UINT32 MessageSwitchValue = 0;
# 1534|-> 	UINT32 MsgId = 0;
# 1535|   	UINT32 MsgType = 0;
# 1536|   	UINT32 IsMessagePresent = 0;

Error: COMPILER_WARNING (CWE-563): [#def411]
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:1535:16: warning[-Wunused-but-set-variable]: variable ‘MsgType’ set but not used
# 1535 |         UINT32 MsgType = 0;
#      |                ^~~~~~~
# 1533|   	UINT32 MessageSwitchValue = 0;
# 1534|   	UINT32 MsgId = 0;
# 1535|-> 	UINT32 MsgType = 0;
# 1536|   	UINT32 IsMessagePresent = 0;
# 1537|   

Error: COMPILER_WARNING (CWE-563): [#def412]
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c: scope_hint: In function ‘tsg_ndr_read_caps_response’
FreeRDP-3.12.0/libfreerdp/core/gateway/tsg.c:1536:16: warning[-Wunused-but-set-variable]: variable ‘IsMessagePresent’ set but not used
# 1536 |         UINT32 IsMessagePresent = 0;
#      |                ^~~~~~~~~~~~~~~~
# 1534|   	UINT32 MsgId = 0;
# 1535|   	UINT32 MsgType = 0;
# 1536|-> 	UINT32 IsMessagePresent = 0;
# 1537|   
# 1538|   	WINPR_ASSERT(context);

Error: GCC_ANALYZER_WARNING (CWE-835): [#def413]
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:365:25: warning[-Wanalyzer-infinite-loop]: infinite loop
#  363|   	while (TRUE)
#  364|   	{
#  365|-> 		switch (encodingContext->state)
#  366|   		{
#  367|   			case WebsocketStateOpcodeAndFin:

Error: GCC_ANALYZER_WARNING (CWE-762): [#def414]
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:478:9: warning[-Wanalyzer-mismatching-deallocation]: ‘context’ should have been deallocated with ‘free’ but was deallocated with ‘websocket_context_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:465:38: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:466:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:469:41: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:470:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:471:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:478:9: danger: deallocated with ‘websocket_context_free’ here; allocation at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  476|   	return context;
#  477|   fail:
#  478|-> 	websocket_context_free(context);
#  479|   	return NULL;
#  480|   }

Error: GCC_ANALYZER_WARNING (CWE-416): [#def415]
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:487:9: warning[-Wanalyzer-use-after-free]: use after ‘websocket_context_free’ of ‘context’
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:463:20: enter_function: entry to ‘websocket_context_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:465:38: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:466:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:469:41: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:478:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:478:9: call_function: calling ‘websocket_context_free’ from ‘websocket_context_new’
#  485|   		return;
#  486|   
#  487|-> 	Stream_Free(context->responseStreamBuffer, TRUE);
#  488|   	free(context);
#  489|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def416]
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:836:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:777:9: enter_function: entry to ‘wst_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:779:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:782:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:783:12: branch_false: following ‘false’ branch (when ‘wst’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:786:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:792:14: call_function: calling ‘wst_parse_url’ from ‘wst_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:792:14: return_function: returning to ‘wst_new’ from ‘wst_parse_url’
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:792:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:793:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:836:9: danger: ‘<unknown>’ leaks here; was allocated at [(10)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/9)
#  834|   	WINPR_PRAGMA_DIAG_PUSH
#  835|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  836|-> 	wst_free(wst);
#  837|   	WINPR_PRAGMA_DIAG_POP
#  838|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def417]
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:836:9: warning[-Wanalyzer-mismatching-deallocation]: ‘wst’ should have been deallocated with ‘free’ but was deallocated with ‘wst_free’
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:779:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:782:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:782:32: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:783:12: branch_false: following ‘false’ branch (when ‘wst’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:786:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:792:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:793:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:836:9: danger: deallocated with ‘wst_free’ here; allocation at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2) expects deallocation with ‘free’
#  834|   	WINPR_PRAGMA_DIAG_PUSH
#  835|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  836|-> 	wst_free(wst);
#  837|   	WINPR_PRAGMA_DIAG_POP
#  838|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def418]
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:846:9: warning[-Wanalyzer-use-after-free]: use after ‘wst_free’ of ‘wst’
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:777:9: enter_function: entry to ‘wst_new’
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:779:12: branch_false: following ‘false’ branch (when ‘context’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:782:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:782:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:783:12: branch_false: following ‘false’ branch (when ‘wst’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:786:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:792:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:793:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:836:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/gateway/wst.c:836:9: call_function: calling ‘wst_free’ from ‘wst_new’
#  844|   		return;
#  845|   
#  846|-> 	freerdp_tls_free(wst->tls);
#  847|   	http_context_free(wst->http);
#  848|   	credssp_auth_free(wst->auth);

Error: COMPILER_WARNING (CWE-563): [#def419]
FreeRDP-3.12.0/libfreerdp/core/gcc.c: scope_hint: In function ‘gcc_read_client_core_data’
FreeRDP-3.12.0/libfreerdp/core/gcc.c:1213:24: warning[-Wunused-but-set-variable]: variable ‘clientProductIdLen’ set but not used
# 1213 |                 UINT16 clientProductIdLen = 0;
#      |                        ^~~~~~~~~~~~~~~~~~
# 1211|   	do
# 1212|   	{
# 1213|-> 		UINT16 clientProductIdLen = 0;
# 1214|   		if (blockLength < 2)
# 1215|   			break;

Error: COMPILER_WARNING (CWE-563): [#def420]
FreeRDP-3.12.0/libfreerdp/core/gcc.c: scope_hint: In function ‘gcc_read_server_network_data’
FreeRDP-3.12.0/libfreerdp/core/gcc.c:1928:16: warning[-Wunused-but-set-variable]: variable ‘MCSChannelId’ set but not used
# 1928 |         UINT16 MCSChannelId = 0;
#      |                ^~~~~~~~~~~~
# 1926|   {
# 1927|   	UINT16 channelId = 0;
# 1928|-> 	UINT16 MCSChannelId = 0;
# 1929|   	UINT16 channelCount = 0;
# 1930|   	UINT32 parsedChannelCount = 0;

Error: COMPILER_WARNING (CWE-1164): [#def421]
FreeRDP-3.12.0/libfreerdp/core/license.c:805:6: warning[-Wunused-function]: ‘license_read_server_upgrade_license’ defined but not used
#  805 | BOOL license_read_server_upgrade_license(rdpLicense* license, wStream* s)
#      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  803|   }
#  804|   
#  805|-> BOOL license_read_server_upgrade_license(rdpLicense* license, wStream* s)
#  806|   {
#  807|   	WINPR_ASSERT(license);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def422]
FreeRDP-3.12.0/libfreerdp/core/license.c:1480:17: warning[-Wanalyzer-malloc-leak]: leak of ‘*blob.data’
FreeRDP-3.12.0/libfreerdp/core/license.c:2625:6: enter_function: entry to ‘license_read_client_platform_challenge_response’
FreeRDP-3.12.0/libfreerdp/core/license.c:2629:14: call_function: calling ‘license_read_binary_blob’ from ‘license_read_client_platform_challenge_response’
# 1478|   	blob->data = NULL;
# 1479|   	if (blob->length > 0)
# 1480|-> 		blob->data = malloc(blob->length);
# 1481|   	if (!blob->data)
# 1482|   	{

Error: COMPILER_WARNING (CWE-563): [#def423]
FreeRDP-3.12.0/libfreerdp/core/license.c: scope_hint: In function ‘license_read_platform_challenge_packet’
FreeRDP-3.12.0/libfreerdp/core/license.c:1966:16: warning[-Wunused-but-set-variable]: variable ‘ConnectFlags’ set but not used
# 1966 |         UINT32 ConnectFlags = 0;
#      |                ^~~~~~~~~~~~
# 1964|   {
# 1965|   	BYTE macData[LICENSING_ENCRYPTION_KEY_LENGTH] = { 0 };
# 1966|-> 	UINT32 ConnectFlags = 0;
# 1967|   
# 1968|   	WINPR_ASSERT(license);

Error: COMPILER_WARNING (CWE-1164): [#def424]
FreeRDP-3.12.0/libfreerdp/core/license.c: scope_hint: At top level
FreeRDP-3.12.0/libfreerdp/core/license.c:2569:6: warning[-Wunused-function]: ‘license_read_platform_challenge_response’ defined but not used
# 2569 | BOOL license_read_platform_challenge_response(rdpLicense* license, wStream* s)
#      |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 2567|   }
# 2568|   
# 2569|-> BOOL license_read_platform_challenge_response(rdpLicense* license, wStream* s)
# 2570|   {
# 2571|   	UINT16 wVersion = 0;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def425]
FreeRDP-3.12.0/libfreerdp/core/license.c:2722:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/core/license.c:2667:13: enter_function: entry to ‘license_new’
FreeRDP-3.12.0/libfreerdp/core/license.c:2673:12: branch_false: following ‘false’ branch (when ‘license’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/license.c:2676:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/license.c:2683:38: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/license.c:2683:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/license.c:2685:38: call_function: inlined call to ‘license_new_product_info’ from ‘license_new’
FreeRDP-3.12.0/libfreerdp/core/license.c:2685:12: branch_true: following ‘true’ branch (when ‘productInfo’ is NULL)...
FreeRDP-3.12.0/libfreerdp/core/license.c:2686:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/license.c:2722:9: danger: ‘<unknown>’ leaks here; was allocated at [(4)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/3)
# 2720|   	WINPR_PRAGMA_DIAG_PUSH
# 2721|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2722|-> 	license_free(license);
# 2723|   	WINPR_PRAGMA_DIAG_POP
# 2724|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def426]
FreeRDP-3.12.0/libfreerdp/core/license.c:2722:9: warning[-Wanalyzer-mismatching-deallocation]: ‘license’ should have been deallocated with ‘free’ but was deallocated with ‘license_free’
FreeRDP-3.12.0/libfreerdp/core/license.c:2672:32: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/license.c:2673:12: branch_false: following ‘false’ branch (when ‘license’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/license.c:2676:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/license.c:2683:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/license.c:2684:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/license.c:2722:9: danger: deallocated with ‘license_free’ here; allocation at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 2720|   	WINPR_PRAGMA_DIAG_PUSH
# 2721|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2722|-> 	license_free(license);
# 2723|   	WINPR_PRAGMA_DIAG_POP
# 2724|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def427]
FreeRDP-3.12.0/libfreerdp/core/license.c:2736:17: warning[-Wanalyzer-use-after-free]: use after ‘license_free’ of ‘license’
FreeRDP-3.12.0/libfreerdp/core/license.c:2667:13: enter_function: entry to ‘license_new’
FreeRDP-3.12.0/libfreerdp/core/license.c:2672:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/license.c:2673:12: branch_false: following ‘false’ branch (when ‘license’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/license.c:2676:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/license.c:2722:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/license.c:2722:9: call_function: calling ‘license_free’ from ‘license_new’
# 2734|   	if (license)
# 2735|   	{
# 2736|-> 		freerdp_certificate_free(license->certificate);
# 2737|   		license_free_product_info(license->ProductInfo);
# 2738|   		license_free_binary_blob(license->ErrorInfo);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def428]
FreeRDP-3.12.0/libfreerdp/core/listener.c:114:31: warning[-Wanalyzer-malloc-leak]: leak of ‘WSACreateEvent()’
FreeRDP-3.12.0/libfreerdp/core/listener.c:62:12: branch_false: following ‘false’ branch (when ‘sockfd != -1’)...
FreeRDP-3.12.0/libfreerdp/core/listener.c:68:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:69:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:77:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:85:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:94:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:103:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:103:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:111:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:112:51: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/listener.c:114:31: danger: ‘WSACreateEvent()’ leaks here; was allocated at [(14)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/13)
#  112|   	listener->events[listener->num_sockfds] = WSACreateEvent();
#  113|   
#  114|-> 	if (!listener->events[listener->num_sockfds])
#  115|   	{
#  116|   		listener->num_sockfds = 0;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def429]
FreeRDP-3.12.0/libfreerdp/core/listener.c:224:39: warning[-Wanalyzer-malloc-leak]: leak of ‘WSACreateEvent()’
FreeRDP-3.12.0/libfreerdp/core/listener.c:148:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:154:15: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:156:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:159:41: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:161:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:170:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:172:20: branch_false: following ‘false’ branch (when ‘sockfd != -1’)...
FreeRDP-3.12.0/libfreerdp/core/listener.c:178:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:211:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:213:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:221:35: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:222:59: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/listener.c:224:39: danger: ‘WSACreateEvent()’ leaks here; was allocated at [(16)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/15)
#  222|   		listener->events[listener->num_sockfds] = WSACreateEvent();
#  223|   
#  224|-> 		if (!listener->events[listener->num_sockfds])
#  225|   		{
#  226|   			listener->num_sockfds = 0;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def430]
FreeRDP-3.12.0/libfreerdp/core/listener.c:303:9: warning[-Wanalyzer-malloc-leak]: leak of ‘((rdpListener)*(void *)*instance.listener).events[<unknown>]’
FreeRDP-3.12.0/libfreerdp/core/listener.c:249:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:255:18: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:257:12: branch_false: following ‘false’ branch (when ‘sockfd != -1’)...
FreeRDP-3.12.0/libfreerdp/core/listener.c:263:18: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:264:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:271:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:276:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:283:18: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:285:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:292:18: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:292:18: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/listener.c:294:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:301:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:303:9: danger: ‘((rdpListener)*(void *)*instance.listener).events[<unknown>]’ leaks here; was allocated at [(13)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/12)
#  301|   	listener->sockfds[listener->num_sockfds] = sockfd;
#  302|   	listener->events[listener->num_sockfds] = hevent;
#  303|-> 	listener->num_sockfds++;
#  304|   	WLog_INFO(TAG, "Listening on socket %s.", addr.sun_path);
#  305|   	return TRUE;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def431]
FreeRDP-3.12.0/libfreerdp/core/listener.c:328:31: warning[-Wanalyzer-malloc-leak]: leak of ‘WSACreateEvent()’
FreeRDP-3.12.0/libfreerdp/core/listener.c:316:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:322:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:322:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/listener.c:325:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/listener.c:326:51: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/listener.c:328:31: danger: ‘WSACreateEvent()’ leaks here; was allocated at [(5)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/4)
#  326|   	listener->events[listener->num_sockfds] = WSACreateEvent();
#  327|   
#  328|-> 	if (!listener->events[listener->num_sockfds])
#  329|   		return FALSE;
#  330|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def432]
FreeRDP-3.12.0/libfreerdp/core/message.c:1319:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/core/message.c:1300:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/message.c:1305:12: branch_false: following ‘false’ branch (when ‘wParam’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/message.c:1308:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/message.c:1311:12: branch_false: following ‘false’ branch (when ‘lParam’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/message.c:1314:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/message.c:1314:28: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/message.c:1316:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/message.c:1319:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/message.c:1319:9: danger: ‘<unknown>’ leaks here; was allocated at [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6)
# 1317|   		goto out_fail;
# 1318|   
# 1319|-> 	CopyMemory(lParam, windowIcon, sizeof(WINDOW_ICON_ORDER));
# 1320|   	WLog_VRB(TAG, "update_message_WindowIcon");
# 1321|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def433]
FreeRDP-3.12.0/libfreerdp/core/nla.c:2113:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/core/nla.c:2082:12: branch_false: following ‘false’ branch (when ‘nla’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/nla.c:2085:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2093:25: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2094:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/nla.c:2097:21: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2098:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/nla.c:2099:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2113:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
# 2111|   	WINPR_PRAGMA_DIAG_PUSH
# 2112|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2113|-> 	nla_free(nla);
# 2114|   	WINPR_PRAGMA_DIAG_POP
# 2115|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def434]
FreeRDP-3.12.0/libfreerdp/core/nla.c:2113:9: warning[-Wanalyzer-mismatching-deallocation]: ‘nla’ should have been deallocated with ‘free’ but was deallocated with ‘nla_free’
FreeRDP-3.12.0/libfreerdp/core/nla.c:2080:32: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/nla.c:2082:12: branch_false: following ‘false’ branch (when ‘nla’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/nla.c:2085:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2094:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/nla.c:2095:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2113:9: danger: deallocated with ‘nla_free’ here; allocation at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 2111|   	WINPR_PRAGMA_DIAG_PUSH
# 2112|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2113|-> 	nla_free(nla);
# 2114|   	WINPR_PRAGMA_DIAG_POP
# 2115|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def435]
FreeRDP-3.12.0/libfreerdp/core/nla.c:2128:9: warning[-Wanalyzer-use-after-free]: use after ‘nla_free’ of ‘nla’
FreeRDP-3.12.0/libfreerdp/core/nla.c:2072:9: enter_function: entry to ‘nla_new’
FreeRDP-3.12.0/libfreerdp/core/nla.c:2080:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2082:12: branch_false: following ‘false’ branch (when ‘nla’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/nla.c:2085:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2113:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/nla.c:2113:9: call_function: calling ‘nla_free’ from ‘nla_new’
# 2126|   		return;
# 2127|   
# 2128|-> 	smartcardCertInfo_Free(nla->smartcardCert);
# 2129|   	nla_buffer_free(nla);
# 2130|   	sspi_SecBufferFree(&nla->tsCredentials);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def436]
FreeRDP-3.12.0/libfreerdp/core/orders.c:2318:13: warning[-Wanalyzer-malloc-leak]: leak of ‘update_read_cache_bitmap_order(update,  s,  compressed, (int)v)’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4438:6: enter_function: entry to ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4444:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4447:9: call_function: inlined call to ‘stream_read_u8’ from ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4449:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: call_function: calling ‘update_recv_secondary_order’ from ‘update_recv_order’
# 2316|   	rdp_update_internal* up = update_cast(update);
# 2317|   
# 2318|-> 	if (!update || !s)
# 2319|   		return NULL;
# 2320|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def437]
FreeRDP-3.12.0/libfreerdp/core/orders.c:2375:9: warning[-Wanalyzer-mismatching-deallocation]: ‘cache_bitmap’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_bitmap_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4438:6: enter_function: entry to ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4444:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4447:9: call_function: inlined call to ‘stream_read_u8’ from ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4449:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: call_function: calling ‘update_recv_secondary_order’ from ‘update_recv_order’
# 2373|   	WINPR_PRAGMA_DIAG_PUSH
# 2374|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2375|-> 	free_cache_bitmap_order(update->context, cache_bitmap);
# 2376|   	WINPR_PRAGMA_DIAG_POP
# 2377|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def438]
FreeRDP-3.12.0/libfreerdp/core/orders.c:2758:9: warning[-Wanalyzer-malloc-leak]: leak of ‘update_read_cache_color_table_order(update,  s, (int)v)’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4438:6: enter_function: entry to ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4444:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4447:9: call_function: inlined call to ‘stream_read_u8’ from ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4449:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: call_function: calling ‘update_recv_secondary_order’ from ‘update_recv_order’
# 2756|   	WINPR_PRAGMA_DIAG_PUSH
# 2757|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2758|-> 	free_cache_color_table_order(update->context, cache_color_table);
# 2759|   	WINPR_PRAGMA_DIAG_POP
# 2760|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def439]
FreeRDP-3.12.0/libfreerdp/core/orders.c:2758:9: warning[-Wanalyzer-mismatching-deallocation]: ‘cache_color_table’ should have been deallocated with ‘free’ but was deallocated with ‘free_cache_color_table_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4438:6: enter_function: entry to ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4444:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4447:9: call_function: inlined call to ‘stream_read_u8’ from ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4449:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: call_function: calling ‘update_recv_secondary_order’ from ‘update_recv_order’
# 2756|   	WINPR_PRAGMA_DIAG_PUSH
# 2757|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2758|-> 	free_cache_color_table_order(update->context, cache_color_table);
# 2759|   	WINPR_PRAGMA_DIAG_POP
# 2760|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def440]
FreeRDP-3.12.0/libfreerdp/core/orders.c:3129:16: warning[-Wanalyzer-malloc-leak]: leak of ‘cache_brush’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4438:6: enter_function: entry to ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4444:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4447:9: call_function: inlined call to ‘stream_read_u8’ from ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4449:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: call_function: calling ‘update_recv_secondary_order’ from ‘update_recv_order’
# 3127|   	}
# 3128|   
# 3129|-> 	return cache_brush;
# 3130|   fail:
# 3131|   	free_cache_brush_order(update->context, cache_brush);

Error: COMPILER_WARNING (CWE-563): [#def441]
FreeRDP-3.12.0/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_read_header’
FreeRDP-3.12.0/libfreerdp/core/rdp.c:647:23: warning[-Wunused-variable]: unused variable ‘byte’
#  647 |         const uint8_t byte = Stream_Get_UINT8(s); /* dataPriority + Segmentation (0x70) */
#      |                       ^~~~
#  645|   		return FALSE;
#  646|   
#  647|-> 	const uint8_t byte = Stream_Get_UINT8(s); /* dataPriority + Segmentation (0x70) */
#  648|   
#  649|   	if (!per_read_length(s, length)) /* userData (OCTET_STRING) */

Error: COMPILER_WARNING (CWE-563): [#def442]
FreeRDP-3.12.0/libfreerdp/core/rdp.c: scope_hint: In function ‘rdp_recv_server_set_keyboard_indicators_pdu’
FreeRDP-3.12.0/libfreerdp/core/rdp.c:994:24: warning[-Wunused-variable]: unused variable ‘unitId’
#  994 |         const uint16_t unitId = Stream_Get_UINT16(s); /* unitId (2 bytes) */
#      |                        ^~~~~~
#  992|   		return FALSE;
#  993|   
#  994|-> 	const uint16_t unitId = Stream_Get_UINT16(s); /* unitId (2 bytes) */
#  995|   	const UINT16 ledFlags = Stream_Get_UINT16(s); /* ledFlags (2 bytes) */
#  996|   	return IFCALLRESULT(TRUE, context->update->SetKeyboardIndicators, context, ledFlags);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def443]
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2399:9: warning[-Wanalyzer-mismatching-deallocation]: ‘rdp’ should have been deallocated with ‘free’ but was deallocated with ‘rdp_free’
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2266:24: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2268:12: branch_false: following ‘false’ branch (when ‘rdp’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2271:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2284:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2286:53: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2288:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2289:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/rdp.c:2399:9: danger: deallocated with ‘rdp_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 2397|   	WINPR_PRAGMA_DIAG_PUSH
# 2398|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2399|-> 	rdp_free(rdp);
# 2400|   	WINPR_PRAGMA_DIAG_POP
# 2401|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def444]
FreeRDP-3.12.0/libfreerdp/core/rdstls.c:448:21: warning[-Wanalyzer-null-argument]: use of NULL ‘clientStr’ where non-null expected
FreeRDP-3.12.0/libfreerdp/core/rdstls.c:669:12: enter_function: entry to ‘rdstls_recv’
FreeRDP-3.12.0/libfreerdp/core/rdstls.c:682:9: call_function: inlined call to ‘stream_read_u16_le’ from ‘rdstls_recv’
FreeRDP-3.12.0/libfreerdp/core/rdstls.c:683:12: branch_false: following ‘false’ branch (when ‘v == 1’)...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/rdstls.c:691:9: call_function: inlined call to ‘stream_read_u16_le’ from ‘rdstls_recv’
FreeRDP-3.12.0/libfreerdp/core/rdstls.c:699:30: call_function: calling ‘rdstls_process_authentication_request’ from ‘rdstls_recv’
#  446|   		WINPR_ASSERT(serverStr);
#  447|   		WINPR_ASSERT(clientStr);
#  448|-> 		if (strcmp(serverStr, clientStr) != 0)
#  449|   		{
#  450|   			WLog_Print(log, WLOG_ERROR, "%s verification failed", field);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def445]
FreeRDP-3.12.0/libfreerdp/core/server.c:190:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘channel’
FreeRDP-3.12.0/libfreerdp/core/server.c:275:13: enter_function: entry to ‘wts_read_drdynvc_pdu’
FreeRDP-3.12.0/libfreerdp/core/server.c:288:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:291:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:298:12: branch_false: following ‘false’ branch (when ‘Cmd != 5’)...
FreeRDP-3.12.0/libfreerdp/core/server.c:301:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:301:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:333:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:336:40: call_function: calling ‘wts_read_drdynvc_create_response’ from ‘wts_read_drdynvc_pdu’
#  188|   		DEBUG_DVC("ChannelId %" PRIu32 " creation failed (%" PRId32 ")", channel->channelId,
#  189|   		          (INT32)CreationStatus);
#  190|-> 		channel->dvc_open_state = DVC_OPEN_STATE_FAILED;
#  191|   	}
#  192|   	else

Error: GCC_ANALYZER_WARNING (CWE-476): [#def446]
FreeRDP-3.12.0/libfreerdp/core/server.c:195:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘channel’
FreeRDP-3.12.0/libfreerdp/core/server.c:275:13: enter_function: entry to ‘wts_read_drdynvc_pdu’
FreeRDP-3.12.0/libfreerdp/core/server.c:288:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:291:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:298:12: branch_false: following ‘false’ branch (when ‘Cmd != 5’)...
FreeRDP-3.12.0/libfreerdp/core/server.c:301:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:301:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:333:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:336:40: call_function: calling ‘wts_read_drdynvc_create_response’ from ‘wts_read_drdynvc_pdu’
#  193|   	{
#  194|   		DEBUG_DVC("ChannelId %" PRIu32 " creation succeeded", channel->channelId);
#  195|-> 		channel->dvc_open_state = DVC_OPEN_STATE_SUCCEEDED;
#  196|   	}
#  197|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def447]
FreeRDP-3.12.0/libfreerdp/core/server.c:271:9: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dvc’
FreeRDP-3.12.0/libfreerdp/core/server.c:275:13: enter_function: entry to ‘wts_read_drdynvc_pdu’
FreeRDP-3.12.0/libfreerdp/core/server.c:288:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:291:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:298:12: branch_false: following ‘false’ branch (when ‘Cmd != 5’)...
FreeRDP-3.12.0/libfreerdp/core/server.c:301:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:301:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:333:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:363:33: call_function: inlined call to ‘wts_read_drdynvc_close_response’ from ‘wts_read_drdynvc_pdu’
#  269|   	WINPR_ASSERT(channel);
#  270|   	DEBUG_DVC("ChannelId %" PRIu32 " close response", channel->channelId);
#  271|-> 	channel->dvc_open_state = DVC_OPEN_STATE_CLOSED;
#  272|   	MessageQueue_PostQuit(channel->queue, 0);
#  273|   }

Error: GCC_ANALYZER_WARNING (CWE-476): [#def448]
FreeRDP-3.12.0/libfreerdp/core/server.c:339:37: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dvc’
FreeRDP-3.12.0/libfreerdp/core/server.c:288:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:291:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:298:12: branch_false: following ‘false’ branch (when ‘Cmd != 5’)...
FreeRDP-3.12.0/libfreerdp/core/server.c:301:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:301:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:333:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:339:37: danger: dereference of NULL ‘dvc’
#  337|   
#  338|   			case DATA_FIRST_PDU:
#  339|-> 				if (dvc->dvc_open_state != DVC_OPEN_STATE_SUCCEEDED)
#  340|   				{
#  341|   					WLog_ERR(TAG,

Error: GCC_ANALYZER_WARNING (CWE-476): [#def449]
FreeRDP-3.12.0/libfreerdp/core/server.c:351:37: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘dvc’
FreeRDP-3.12.0/libfreerdp/core/server.c:288:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:291:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:298:12: branch_false: following ‘false’ branch (when ‘Cmd != 5’)...
FreeRDP-3.12.0/libfreerdp/core/server.c:301:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:301:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:304:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:333:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:351:37: danger: dereference of NULL ‘dvc’
#  349|   
#  350|   			case DATA_PDU:
#  351|-> 				if (dvc->dvc_open_state != DVC_OPEN_STATE_SUCCEEDED)
#  352|   				{
#  353|   					WLog_ERR(TAG,

Error: GCC_ANALYZER_WARNING (CWE-762): [#def450]
FreeRDP-3.12.0/libfreerdp/core/server.c:984:9: warning[-Wanalyzer-mismatching-deallocation]: ‘channel_new(HashTable_GetItemValue(g_ServerHandles, (const void *)(long unsigned int)SessionId), client, 0, 0, 1, (long unsigned int)freerdp_settings_get_uint32(*client_41->context.settings, 2881), pVirtualName)’ should have been deallocated with ‘free’ but was deallocated with ‘server_channel_common_free’
FreeRDP-3.12.0/libfreerdp/core/server.c:1440:15: enter_function: entry to ‘FreeRDP_WTSVirtualChannelOpenEx’
FreeRDP-3.12.0/libfreerdp/core/server.c:1450:12: branch_false: following ‘false’ branch (when ‘SessionId != 4294967295’)...
FreeRDP-3.12.0/libfreerdp/core/server.c:1454:72: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:1456:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:1459:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:1459:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:1464:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:1478:12: branch_false: following ‘false’ branch (when ‘joined != 0’)...
FreeRDP-3.12.0/libfreerdp/core/server.c:1484:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:1484:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:1496:19: call_function: calling ‘channel_new’ from ‘FreeRDP_WTSVirtualChannelOpenEx’
FreeRDP-3.12.0/libfreerdp/core/server.c:1496:19: return_function: returning to ‘FreeRDP_WTSVirtualChannelOpenEx’ from ‘channel_new’
FreeRDP-3.12.0/libfreerdp/core/server.c:1498:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:1504:47: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:1507:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:1509:17: call_function: inlined call to ‘channel_free’ from ‘FreeRDP_WTSVirtualChannelOpenEx’
#  982|   static void channel_free(rdpPeerChannel* channel)
#  983|   {
#  984|-> 	server_channel_common_free(channel);
#  985|   }
#  986|   

Error: COMPILER_WARNING (CWE-563): [#def451]
FreeRDP-3.12.0/libfreerdp/core/server.c: scope_hint: In function ‘FreeRDP_WTSVirtualChannelWrite’
FreeRDP-3.12.0/libfreerdp/core/server.c:1681:29: warning[-Wunused-but-set-variable]: variable ‘context’ set but not used
# 1681 |                 rdpContext* context = NULL;
#      |                             ^~~~~~~
# 1679|   	else
# 1680|   	{
# 1681|-> 		rdpContext* context = NULL;
# 1682|   
# 1683|   		first = TRUE;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def452]
FreeRDP-3.12.0/libfreerdp/core/server.c:2097:9: warning[-Wanalyzer-use-after-free]: use after ‘server_channel_common_free’ of ‘channel’
FreeRDP-3.12.0/libfreerdp/core/server.c:987:13: enter_function: entry to ‘array_channel_free’
FreeRDP-3.12.0/libfreerdp/core/server.c:990:9: call_function: inlined call to ‘channel_free’ from ‘array_channel_free’
# 2095|   	if (!channel)
# 2096|   		return;
# 2097|-> 	MessageQueue_Free(channel->queue);
# 2098|   	Stream_Free(channel->receiveData, TRUE);
# 2099|   	DeleteCriticalSection(&channel->writeLock);

Error: GCC_ANALYZER_WARNING (CWE-457): [#def453]
FreeRDP-3.12.0/libfreerdp/core/server.c:2097:9: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*channel.queue’
FreeRDP-3.12.0/libfreerdp/core/server.c:2103:17: enter_function: entry to ‘server_channel_common_new’
FreeRDP-3.12.0/libfreerdp/core/server.c:2108:12: branch_false: following ‘false’ branch (when ‘channel’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/server.c:2111:35: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:2129:9: call_function: calling ‘server_channel_common_free’ from ‘server_channel_common_new’
# 2095|   	if (!channel)
# 2096|   		return;
# 2097|-> 	MessageQueue_Free(channel->queue);
# 2098|   	Stream_Free(channel->receiveData, TRUE);
# 2099|   	DeleteCriticalSection(&channel->writeLock);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def454]
FreeRDP-3.12.0/libfreerdp/core/server.c:2108:12: warning[-Wanalyzer-malloc-leak]: leak of ‘server_channel_common_new(client, (int)index,  ChannelId,  chunkSize, & queueCallbacks,  name)’
FreeRDP-3.12.0/libfreerdp/core/server.c:1333:24: enter_function: entry to ‘channel_new’
FreeRDP-3.12.0/libfreerdp/core/server.c:1341:13: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/server.c:1341:13: call_function: calling ‘server_channel_common_new’ from ‘channel_new’
# 2106|   {
# 2107|   	rdpPeerChannel* channel = (rdpPeerChannel*)calloc(1, sizeof(rdpPeerChannel));
# 2108|-> 	if (!channel)
# 2109|   		return NULL;
# 2110|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def455]
FreeRDP-3.12.0/libfreerdp/core/server.c:2111:35: warning[-Wanalyzer-malloc-leak]: leak of ‘server_channel_common_new(client, (int)index,  ChannelId,  chunkSize, & queueCallbacks,  name)’
FreeRDP-3.12.0/libfreerdp/core/server.c:1333:24: enter_function: entry to ‘channel_new’
FreeRDP-3.12.0/libfreerdp/core/server.c:1341:13: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/server.c:1341:13: call_function: calling ‘server_channel_common_new’ from ‘channel_new’
# 2109|   		return NULL;
# 2110|   
# 2111|-> 	InitializeCriticalSection(&channel->writeLock);
# 2112|   
# 2113|   	channel->receiveData = Stream_New(NULL, chunkSize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def456]
FreeRDP-3.12.0/libfreerdp/core/server.c:2124:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/core/server.c:2108:12: branch_false: following ‘false’ branch (when ‘channel’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/server.c:2111:35: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:2114:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:2117:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:2117:26: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/server.c:2118:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:2121:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:2124:9: danger: ‘<unknown>’ leaks here; was allocated at [(5)](sarif:/runs/0/results/11/codeFlows/0/threadFlows/0/locations/4)
# 2122|   	channel->client = client;
# 2123|   	channel->channelId = channelId;
# 2124|-> 	strncpy(channel->channelName, name, ARRAYSIZE(channel->channelName) - 1);
# 2125|   	return channel;
# 2126|   fail:

Error: GCC_ANALYZER_WARNING (CWE-762): [#def457]
FreeRDP-3.12.0/libfreerdp/core/server.c:2129:9: warning[-Wanalyzer-mismatching-deallocation]: ‘channel’ should have been deallocated with ‘free’ but was deallocated with ‘server_channel_common_free’
FreeRDP-3.12.0/libfreerdp/core/server.c:2107:52: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/server.c:2108:12: branch_false: following ‘false’ branch (when ‘channel’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/server.c:2111:35: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:2114:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/server.c:2115:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/server.c:2129:9: danger: deallocated with ‘server_channel_common_free’ here; allocation at [(1)](sarif:/runs/0/results/12/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 2127|   	WINPR_PRAGMA_DIAG_PUSH
# 2128|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2129|-> 	server_channel_common_free(channel);
# 2130|   	WINPR_PRAGMA_DIAG_POP
# 2131|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def458]
FreeRDP-3.12.0/libfreerdp/core/settings.c:425:57: warning[-Wanalyzer-malloc-leak]: leak of ‘alloc_array((long unsigned int)freerdp_settings_get_uint32(settings, 384))’
FreeRDP-3.12.0/libfreerdp/core/settings.c:535:13: enter_function: entry to ‘freerdp_settings_client_monitors_have_gaps’
FreeRDP-3.12.0/libfreerdp/core/settings.c:539:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:542:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:542:26: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/settings.c:542:26: call_function: calling ‘alloc_array’ from ‘freerdp_settings_client_monitors_have_gaps’
#  423|   {
#  424|   	// NOLINTNEXTLINE(clang-analyzer-unix.MallocSizeof)
#  425|-> 	BYTE* array = calloc(count * sizeof(uintptr_t), count * sizeof(UINT32));
#  426|   	UINT32** dst = (UINT32**)array;
#  427|   	UINT32* val = (UINT32*)(array + count * sizeof(uintptr_t));

Error: GCC_ANALYZER_WARNING (CWE-401): [#def459]
FreeRDP-3.12.0/libfreerdp/core/settings.c:425:57: warning[-Wanalyzer-malloc-leak]: leak of ‘alloc_array(count)’
FreeRDP-3.12.0/libfreerdp/core/settings.c:442:13: enter_function: entry to ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:444:12: branch_false: following ‘false’ branch (when ‘count != 0’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: call_function: calling ‘alloc_array’ from ‘find_path_exists_with_dijkstra’
#  423|   {
#  424|   	// NOLINTNEXTLINE(clang-analyzer-unix.MallocSizeof)
#  425|-> 	BYTE* array = calloc(count * sizeof(uintptr_t), count * sizeof(UINT32));
#  426|   	UINT32** dst = (UINT32**)array;
#  427|   	UINT32* val = (UINT32*)(array + count * sizeof(uintptr_t));

Error: CPPCHECK_WARNING (CWE-682): [#def460]
FreeRDP-3.12.0/libfreerdp/core/settings.c:427: error[nullPointerArithmeticOutOfMemory]: If memory allocation fail: pointer addition with NULL pointer.
#  425|   	BYTE* array = calloc(count * sizeof(uintptr_t), count * sizeof(UINT32));
#  426|   	UINT32** dst = (UINT32**)array;
#  427|-> 	UINT32* val = (UINT32*)(array + count * sizeof(uintptr_t));
#  428|   	for (size_t x = 0; x < count; x++)
#  429|   		dst[x] = &val[x];

Error: CPPCHECK_WARNING (CWE-476): [#def461]
FreeRDP-3.12.0/libfreerdp/core/settings.c:429: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: dst
#  427|   	UINT32* val = (UINT32*)(array + count * sizeof(uintptr_t));
#  428|   	for (size_t x = 0; x < count; x++)
#  429|-> 		dst[x] = &val[x];
#  430|   
#  431|   	return dst;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def462]
FreeRDP-3.12.0/libfreerdp/core/settings.c:429:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘array’
FreeRDP-3.12.0/libfreerdp/core/settings.c:425:23: acquire_memory: this call could return NULL
FreeRDP-3.12.0/libfreerdp/core/settings.c:428:28: branch_true: following ‘true’ branch (when ‘x < count’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:429:30: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:429:17: danger: ‘array + x * 8’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#  427|   	UINT32* val = (UINT32*)(array + count * sizeof(uintptr_t));
#  428|   	for (size_t x = 0; x < count; x++)
#  429|-> 		dst[x] = &val[x];
#  430|   
#  431|   	return dst;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def463]
FreeRDP-3.12.0/libfreerdp/core/settings.c:474:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘distance’
FreeRDP-3.12.0/libfreerdp/core/settings.c:442:13: enter_function: entry to ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:444:12: branch_false: following ‘false’ branch (when ‘count != 0’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: call_function: calling ‘alloc_array’ from ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: return_function: returning to ‘find_path_exists_with_dijkstra’ from ‘alloc_array’
FreeRDP-3.12.0/libfreerdp/core/settings.c:452:28: acquire_memory: this call could return NULL
FreeRDP-3.12.0/libfreerdp/core/settings.c:461:28: branch_true: following ‘true’ branch (when ‘x < count’)...
 branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:463:36: branch_true: following ‘true’ branch (when ‘y < count’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:465:34: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:472:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:474:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:474:17: danger: ‘distance + (long unsigned int)x * 4’ could be NULL: unchecked value from [(9)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/8)
#  472|   	for (UINT32 x = 0; x < count; x++)
#  473|   	{
#  474|-> 		distance[x] = cost[start][x];
#  475|   		parent[x] = start;
#  476|   		visited[x] = 0;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def464]
FreeRDP-3.12.0/libfreerdp/core/settings.c:475:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘parent’
FreeRDP-3.12.0/libfreerdp/core/settings.c:442:13: enter_function: entry to ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:444:12: branch_false: following ‘false’ branch (when ‘count != 0’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: call_function: calling ‘alloc_array’ from ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: return_function: returning to ‘find_path_exists_with_dijkstra’ from ‘alloc_array’
FreeRDP-3.12.0/libfreerdp/core/settings.c:458:26: acquire_memory: this call could return NULL
FreeRDP-3.12.0/libfreerdp/core/settings.c:461:28: branch_true: following ‘true’ branch (when ‘x < count’)...
 branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:463:36: branch_true: following ‘true’ branch (when ‘y < count’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:465:34: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:472:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:474:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:475:17: danger: ‘parent + (long unsigned int)x * 4’ could be NULL: unchecked value from [(9)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/8)
#  473|   	{
#  474|   		distance[x] = cost[start][x];
#  475|-> 		parent[x] = start;
#  476|   		visited[x] = 0;
#  477|   	}

Error: GCC_ANALYZER_WARNING (CWE-476): [#def465]
FreeRDP-3.12.0/libfreerdp/core/settings.c:476:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘visited’
FreeRDP-3.12.0/libfreerdp/core/settings.c:442:13: enter_function: entry to ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:444:12: branch_false: following ‘false’ branch (when ‘count != 0’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: call_function: calling ‘alloc_array’ from ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: return_function: returning to ‘find_path_exists_with_dijkstra’ from ‘alloc_array’
FreeRDP-3.12.0/libfreerdp/core/settings.c:455:27: acquire_memory: this call could return NULL
FreeRDP-3.12.0/libfreerdp/core/settings.c:461:28: branch_true: following ‘true’ branch (when ‘x < count’)...
 branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:463:36: branch_true: following ‘true’ branch (when ‘y < count’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:465:34: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:472:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:474:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:476:17: danger: ‘visited + (long unsigned int)x * 4’ could be NULL: unchecked value from [(9)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/8)
#  474|   		distance[x] = cost[start][x];
#  475|   		parent[x] = start;
#  476|-> 		visited[x] = 0;
#  477|   	}
#  478|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def466]
FreeRDP-3.12.0/libfreerdp/core/settings.c:527:9: warning[-Wanalyzer-mismatching-deallocation]: ‘alloc_array(count)’ should have been deallocated with ‘free’ but was deallocated with ‘alloc_free’
FreeRDP-3.12.0/libfreerdp/core/settings.c:442:13: enter_function: entry to ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:444:12: branch_false: following ‘false’ branch (when ‘count != 0’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: call_function: calling ‘alloc_array’ from ‘find_path_exists_with_dijkstra’
FreeRDP-3.12.0/libfreerdp/core/settings.c:449:25: return_function: returning to ‘find_path_exists_with_dijkstra’ from ‘alloc_array’
FreeRDP-3.12.0/libfreerdp/core/settings.c:461:28: branch_false: following ‘false’ branch (when ‘x >= count’)...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:472:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:479:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:484:16: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:515:28: branch_false: following ‘false’ branch (when ‘x >= count’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:527:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:527:9: danger: deallocated with ‘alloc_free’ here; allocation at [(6)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/5) expects deallocation with ‘free’
#  525|   		}
#  526|   	}
#  527|-> 	alloc_free(cost);
#  528|   	free(distance);
#  529|   	free(visited);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def467]
FreeRDP-3.12.0/libfreerdp/core/settings.c:556:9: warning[-Wanalyzer-mismatching-deallocation]: ‘alloc_array((long unsigned int)freerdp_settings_get_uint32(settings, 384))’ should have been deallocated with ‘free’ but was deallocated with ‘alloc_free’
FreeRDP-3.12.0/libfreerdp/core/settings.c:535:13: enter_function: entry to ‘freerdp_settings_client_monitors_have_gaps’
FreeRDP-3.12.0/libfreerdp/core/settings.c:539:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:542:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:542:26: call_function: calling ‘alloc_array’ from ‘freerdp_settings_client_monitors_have_gaps’
FreeRDP-3.12.0/libfreerdp/core/settings.c:542:26: return_function: returning to ‘freerdp_settings_client_monitors_have_gaps’ from ‘alloc_array’
FreeRDP-3.12.0/libfreerdp/core/settings.c:545:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:548:21: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:549:21: call_function: calling ‘monitor_has_gaps’ from ‘freerdp_settings_client_monitors_have_gaps’
FreeRDP-3.12.0/libfreerdp/core/settings.c:549:21: return_function: returning to ‘freerdp_settings_client_monitors_have_gaps’ from ‘monitor_has_gaps’
FreeRDP-3.12.0/libfreerdp/core/settings.c:549:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:550:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:556:9: danger: deallocated with ‘alloc_free’ here; allocation at [(6)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/5) expects deallocation with ‘free’
#  554|   
#  555|   fail:
#  556|-> 	alloc_free(graph);
#  557|   
#  558|   	return rc;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def468]
FreeRDP-3.12.0/libfreerdp/core/settings.c:813:9: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_settings_get_config_path()’
FreeRDP-3.12.0/libfreerdp/core/settings.c:799:7: enter_function: entry to ‘freerdp_settings_get_config_path’
FreeRDP-3.12.0/libfreerdp/core/settings.c:806:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
 acquire_memory: allocated here
 call_function: calling ‘freerdp_settings_get_config_path’ from ‘freerdp_settings_get_config_path’
#  811|   	if (base)
#  812|   		path = GetCombinedPath(base, FREERDP_PRODUCT_STRING);
#  813|-> 	free(base);
#  814|   
#  815|   	return path;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def469]
FreeRDP-3.12.0/libfreerdp/core/settings.c:1365:20: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_clone(*settings.RdpServerCertificate)’
FreeRDP-3.12.0/libfreerdp/core/settings.c:1322:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:1331:21: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:1346:28: branch_true: following ‘true’ branch (when ‘i != 11’)...
FreeRDP-3.12.0/libfreerdp/core/settings.c:1349:66: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:1352:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:1346:56: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:1356:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:1360:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:1360:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:1362:40: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:1362:40: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/settings.c:1363:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:1365:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:1365:20: danger: ‘freerdp_certificate_clone(*settings.RdpServerCertificate)’ leaks here; was allocated at [(11)](sarif:/runs/0/results/11/codeFlows/0/threadFlows/0/locations/10)
# 1363|   		if (!cert)
# 1364|   			goto out_fail;
# 1365|-> 		if (!freerdp_settings_set_pointer_len(_settings, FreeRDP_RdpServerCertificate, cert, 1))
# 1366|   			goto out_fail;
# 1367|   	}

Error: GCC_ANALYZER_WARNING (CWE-762): [#def470]
FreeRDP-3.12.0/libfreerdp/core/settings.c:1577:9: warning[-Wanalyzer-mismatching-deallocation]: ‘_settings’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_settings_free’
FreeRDP-3.12.0/libfreerdp/core/settings.c:1566:14: enter_function: entry to ‘freerdp_settings_clone’
FreeRDP-3.12.0/libfreerdp/core/settings.c:1568:48: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/settings.c:1570:14: call_function: calling ‘freerdp_settings_copy’ from ‘freerdp_settings_clone’
FreeRDP-3.12.0/libfreerdp/core/settings.c:1570:14: return_function: returning to ‘freerdp_settings_clone’ from ‘freerdp_settings_copy’
FreeRDP-3.12.0/libfreerdp/core/settings.c:1570:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/settings.c:1571:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/settings.c:1577:9: danger: deallocated with ‘freerdp_settings_free’ here; allocation at [(2)](sarif:/runs/0/results/12/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
# 1575|   	WINPR_PRAGMA_DIAG_PUSH
# 1576|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1577|-> 	freerdp_settings_free(_settings);
# 1578|   	WINPR_PRAGMA_DIAG_POP
# 1579|   	return NULL;

Error: COMPILER_WARNING (CWE-1164): [#def471]
FreeRDP-3.12.0/libfreerdp/core/tcp.c:106:13: warning[-Wunused-function]: ‘transport_bio_simple_callback’ defined but not used
#  106 | static long transport_bio_simple_callback(WINPR_ATTR_UNUSED BIO* bio, WINPR_ATTR_UNUSED int mode,
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  104|   static int transport_bio_simple_uninit(BIO* bio);
#  105|   
#  106|-> static long transport_bio_simple_callback(WINPR_ATTR_UNUSED BIO* bio, WINPR_ATTR_UNUSED int mode,
#  107|                                             WINPR_ATTR_UNUSED const char* argp,
#  108|                                             WINPR_ATTR_UNUSED int argi, WINPR_ATTR_UNUSED long argl,

Error: COMPILER_WARNING (CWE-1164): [#def472]
FreeRDP-3.12.0/libfreerdp/core/tcp.c:467:13: warning[-Wunused-function]: ‘transport_bio_buffered_callback’ defined but not used
#  467 | static long transport_bio_buffered_callback(WINPR_ATTR_UNUSED BIO* bio, WINPR_ATTR_UNUSED int mode,
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  465|   } WINPR_BIO_BUFFERED_SOCKET;
#  466|   
#  467|-> static long transport_bio_buffered_callback(WINPR_ATTR_UNUSED BIO* bio, WINPR_ATTR_UNUSED int mode,
#  468|                                               WINPR_ATTR_UNUSED const char* argp,
#  469|                                               WINPR_ATTR_UNUSED int argi, WINPR_ATTR_UNUSED long argl,

Error: GCC_ANALYZER_WARNING (CWE-775): [#def473]
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1143:24: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘sockfd’
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1139:12: branch_false: following ‘false’ branch (when ‘hostname’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1146:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1153:12: branch_false: following ‘false’ branch (when ‘ipcSocket == 0’)...
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1163:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1163:17: branch_false: following ‘false’ branch (when ‘useExternalDefinedSocket == 0’)...
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1165:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1165:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1169:26: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1169:26: acquire_resource: stream socket created here
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1170:20: branch_false: following ‘false’ branch (when ‘sockfd >= 0’)...
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1179:36: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/tcp.c:1143:24: danger: ‘sockfd’ leaks here
# 1141|   		freerdp_set_last_error_if_not(context, FREERDP_ERROR_CONNECT_FAILED);
# 1142|   
# 1143|-> 		return -1;
# 1144|   	}
# 1145|   

Error: GCC_ANALYZER_WARNING (CWE-457): [#def474]
FreeRDP-3.12.0/libfreerdp/core/transport.c:1588:16: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*transport.io.TransportDisconnect’
FreeRDP-3.12.0/libfreerdp/core/transport.c:1637:15: enter_function: entry to ‘transport_new’
FreeRDP-3.12.0/libfreerdp/core/transport.c:1642:12: branch_false: following ‘false’ branch (when ‘transport’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/transport.c:1645:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1706:9: call_function: calling ‘transport_free’ from ‘transport_new’
# 1586|   	if (!transport)
# 1587|   		return FALSE;
# 1588|-> 	return IFCALLRESULT(FALSE, transport->io.TransportDisconnect, transport);
# 1589|   }
# 1590|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def475]
FreeRDP-3.12.0/libfreerdp/core/transport.c:1706:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/core/transport.c:1642:12: branch_false: following ‘false’ branch (when ‘transport’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/transport.c:1645:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1647:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/transport.c:1651:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1667:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/transport.c:1671:36: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1673:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/transport.c:1676:37: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1676:37: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1678:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/transport.c:1679:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1706:9: danger: ‘<unknown>’ leaks here; was allocated at [(9)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/8)
# 1704|   	WINPR_PRAGMA_DIAG_PUSH
# 1705|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1706|-> 	transport_free(transport);
# 1707|   	WINPR_PRAGMA_DIAG_POP
# 1708|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def476]
FreeRDP-3.12.0/libfreerdp/core/transport.c:1706:9: warning[-Wanalyzer-mismatching-deallocation]: ‘transport’ should have been deallocated with ‘free’ but was deallocated with ‘transport_free’
FreeRDP-3.12.0/libfreerdp/core/transport.c:1639:50: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/core/transport.c:1642:12: branch_false: following ‘false’ branch (when ‘transport’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/transport.c:1645:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1647:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/transport.c:1648:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:1706:9: danger: deallocated with ‘transport_free’ here; allocation at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 1704|   	WINPR_PRAGMA_DIAG_PUSH
# 1705|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1706|-> 	transport_free(transport);
# 1707|   	WINPR_PRAGMA_DIAG_POP
# 1708|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def477]
FreeRDP-3.12.0/libfreerdp/core/transport.c:1937:9: warning[-Wanalyzer-use-after-free]: use after ‘transport_layer_free’ of ‘layer’
FreeRDP-3.12.0/libfreerdp/core/transport.c:2082:12: enter_function: entry to ‘transport_layer_bio_free’
FreeRDP-3.12.0/libfreerdp/core/transport.c:2088:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/transport.c:2089:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/transport.c:2089:17: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/transport.c:2089:17: call_function: calling ‘transport_layer_free’ from ‘transport_layer_bio_free’
# 1935|   		return;
# 1936|   
# 1937|-> 	IFCALL(layer->Close, layer->userContext);
# 1938|   	free(layer->userContext);
# 1939|   	free(layer);

Error: GCC_ANALYZER_WARNING (CWE-416): [#def478]
FreeRDP-3.12.0/libfreerdp/core/update.c:3365:54: warning[-Wanalyzer-use-after-free]: use after ‘update_free’ of ‘update’
FreeRDP-3.12.0/libfreerdp/core/update.c:3289:12: enter_function: entry to ‘update_new’
FreeRDP-3.12.0/libfreerdp/core/update.c:3298:12: branch_false: following ‘false’ branch (when ‘update’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/core/update.c:3301:34: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/update.c:3306:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/update.c:3307:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/update.c:3355:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/core/update.c:3355:9: call_function: calling ‘update_free’ from ‘update_new’
# 3363|   	{
# 3364|   		rdp_update_internal* up = update_cast(update);
# 3365|-> 		rdp_altsec_update_internal* altsec = altsec_update_cast(update->altsec);
# 3366|   		OFFSCREEN_DELETE_LIST* deleteList = &(altsec->create_offscreen_bitmap.deleteList);
# 3367|   

Error: COMPILER_WARNING (CWE-1164): [#def479]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1052:13: warning[-Wunused-function]: ‘certificate_write_server_x509_certificate_chain’ defined but not used
# 1052 | static BOOL certificate_write_server_x509_certificate_chain(const rdpCertificate* certificate,
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# 1050|   }
# 1051|   
# 1052|-> static BOOL certificate_write_server_x509_certificate_chain(const rdpCertificate* certificate,
# 1053|                                                               wStream* s)
# 1054|   {

Error: GCC_ANALYZER_WARNING (CWE-476): [#def480]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1164:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cert’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1147:13: enter_function: entry to ‘cert_x509_chain_copy’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1151:9: call_function: calling ‘certificate_free_x509_certificate_chain’ from ‘cert_x509_chain_copy’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1151:9: return_function: returning to ‘cert_x509_chain_copy’ from ‘certificate_free_x509_certificate_chain’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1152:12: branch_false: following ‘false’ branch (when ‘src’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1155:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1155:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1157:31: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1158:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1162:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1164:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1166:55: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1169:30: call_function: calling ‘cert_blob_copy’ from ‘cert_x509_chain_copy’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1169:30: return_function: returning to ‘cert_x509_chain_copy’ from ‘cert_blob_copy’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1169:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1164:53: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1164:40: danger: dereference of NULL ‘cert’
# 1162|   		cert->count = src->count;
# 1163|   
# 1164|-> 		for (UINT32 x = 0; x < cert->count; x++)
# 1165|   		{
# 1166|   			const rdpCertBlob* srcblob = &src->array[x];

Error: GCC_ANALYZER_WARNING (CWE-762): [#def481]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1213:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_certificate_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_free’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1197:17: enter_function: entry to ‘freerdp_certificate_clone’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1199:12: branch_false: following ‘false’ branch (when ‘certificate’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1202:40: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1202:40: call_function: calling ‘freerdp_certificate_new’ from ‘freerdp_certificate_clone’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1202:40: return_function: returning to ‘freerdp_certificate_clone’ from ‘freerdp_certificate_new’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1204:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1207:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1207:14: call_function: calling ‘cert_clone_int’ from ‘freerdp_certificate_clone’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1207:14: return_function: returning to ‘freerdp_certificate_clone’ from ‘cert_clone_int’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1207:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1208:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1213:9: danger: deallocated with ‘freerdp_certificate_free’ here; allocation at [(6)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/5) expects deallocation with ‘free’
# 1211|   out_fail:
# 1212|   
# 1213|-> 	freerdp_certificate_free(_certificate);
# 1214|   	return NULL;
# 1215|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def482]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1224:16: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new()’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1326:17: enter_function: entry to ‘freerdp_certificate_new_from_x509’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1330:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1330:32: call_function: calling ‘freerdp_certificate_new’ from ‘freerdp_certificate_new_from_x509’
# 1222|   rdpCertificate* freerdp_certificate_new(void)
# 1223|   {
# 1224|-> 	return (rdpCertificate*)calloc(1, sizeof(rdpCertificate));
# 1225|   }
# 1226|   

Error: GCC_ANALYZER_WARNING (CWE-416): [#def483]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1231:13: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_certificate_free’ of ‘cert’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1308:17: enter_function: entry to ‘freerdp_certificate_new_from_der’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1310:32: call_function: calling ‘freerdp_certificate_new’ from ‘freerdp_certificate_new_from_der’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1310:32: return_function: returning to ‘freerdp_certificate_new_from_der’ from ‘freerdp_certificate_new’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1322:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1322:9: call_function: calling ‘freerdp_certificate_free’ from ‘freerdp_certificate_new_from_der’
# 1229|   	WINPR_ASSERT(cert);
# 1230|   
# 1231|-> 	if (cert->x509)
# 1232|   		X509_free(cert->x509);
# 1233|   	if (cert->chain)

Error: GCC_ANALYZER_WARNING (CWE-762): [#def484]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1322:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_certificate_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_free’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1308:17: enter_function: entry to ‘freerdp_certificate_new_from_der’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1310:32: call_function: calling ‘freerdp_certificate_new’ from ‘freerdp_certificate_new_from_der’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1310:32: return_function: returning to ‘freerdp_certificate_new_from_der’ from ‘freerdp_certificate_new’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1312:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1313:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1322:9: danger: deallocated with ‘freerdp_certificate_free’ here; allocation at [(4)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘free’
# 1320|   	return cert;
# 1321|   fail:
# 1322|-> 	freerdp_certificate_free(cert);
# 1323|   	return NULL;
# 1324|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def485]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1331:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_x509(x509_utils_from_pem(file,  strlen(file), isFile), 0)’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1351:24: enter_function: entry to ‘freerdp_certificate_new_from’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1354:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1356:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1356:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1356:32: call_function: calling ‘freerdp_certificate_new_from_x509’ from ‘freerdp_certificate_new_from’
# 1329|   
# 1330|   	rdpCertificate* cert = freerdp_certificate_new();
# 1331|-> 	if (!cert)
# 1332|   		return NULL;
# 1333|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def486]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1347:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_certificate_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_free’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1326:17: enter_function: entry to ‘freerdp_certificate_new_from_x509’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1330:32: call_function: calling ‘freerdp_certificate_new’ from ‘freerdp_certificate_new_from_x509’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1330:32: return_function: returning to ‘freerdp_certificate_new_from_x509’ from ‘freerdp_certificate_new’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1331:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1335:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1347:9: danger: deallocated with ‘freerdp_certificate_free’ here; allocation at [(4)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘free’
# 1345|   	return cert;
# 1346|   fail:
# 1347|-> 	freerdp_certificate_free(cert);
# 1348|   	return NULL;
# 1349|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def487]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1397:23: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_get_fingerprint_by_hash(cert, "sha256")’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1379:7: enter_function: entry to ‘freerdp_certificate_get_fingerprint’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1381:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1381:16: call_function: calling ‘freerdp_certificate_get_fingerprint_by_hash’ from ‘freerdp_certificate_get_fingerprint’
# 1395|   	BYTE* fp = NULL;
# 1396|   	char* fp_buffer = NULL;
# 1397|-> 	if (!cert || !cert->x509)
# 1398|   	{
# 1399|   		WLog_ERR(TAG, "Invalid certificate [%p, %p]", cert, cert ? cert->x509 : NULL);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def488]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1397:23: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_get_fingerprint_by_hash_ex(cert,  hash, 1)’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1384:7: enter_function: entry to ‘freerdp_certificate_get_fingerprint_by_hash’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1386:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1386:16: call_function: calling ‘freerdp_certificate_get_fingerprint_by_hash_ex’ from ‘freerdp_certificate_get_fingerprint_by_hash’
# 1395|   	BYTE* fp = NULL;
# 1396|   	char* fp_buffer = NULL;
# 1397|-> 	if (!cert || !cert->x509)
# 1398|   	{
# 1399|   		WLog_ERR(TAG, "Invalid certificate [%p, %p]", cert, cert ? cert->x509 : NULL);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def489]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1399:17: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_get_fingerprint_by_hash(cert, "sha256")’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1379:7: enter_function: entry to ‘freerdp_certificate_get_fingerprint’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1381:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1381:16: call_function: calling ‘freerdp_certificate_get_fingerprint_by_hash’ from ‘freerdp_certificate_get_fingerprint’
# 1397|   	if (!cert || !cert->x509)
# 1398|   	{
# 1399|-> 		WLog_ERR(TAG, "Invalid certificate [%p, %p]", cert, cert ? cert->x509 : NULL);
# 1400|   		return NULL;
# 1401|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def490]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1399:17: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_get_fingerprint_by_hash_ex(cert,  hash, 1)’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1384:7: enter_function: entry to ‘freerdp_certificate_get_fingerprint_by_hash’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1386:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1386:16: call_function: calling ‘freerdp_certificate_get_fingerprint_by_hash_ex’ from ‘freerdp_certificate_get_fingerprint_by_hash’
# 1397|   	if (!cert || !cert->x509)
# 1398|   	{
# 1399|-> 		WLog_ERR(TAG, "Invalid certificate [%p, %p]", cert, cert ? cert->x509 : NULL);
# 1400|   		return NULL;
# 1401|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def491]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1508:14: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_get_pem_ex(cert,  pLength, 1)’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1498:7: enter_function: entry to ‘freerdp_certificate_get_pem’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1500:16: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1500:16: call_function: calling ‘freerdp_certificate_get_pem_ex’ from ‘freerdp_certificate_get_pem’
# 1506|   	WINPR_ASSERT(cert);
# 1507|   
# 1508|-> 	if (!cert->x509)
# 1509|   		return NULL;
# 1510|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def492]
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1765:27: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_x509(x509_utils_from_pem(file,  strlen(file), isFile), 0)’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1351:24: enter_function: entry to ‘freerdp_certificate_new_from’
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1354:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1356:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1356:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate.c:1356:32: call_function: calling ‘freerdp_certificate_new_from_x509’ from ‘freerdp_certificate_new_from’
# 1763|   {
# 1764|   	WINPR_ASSERT(cert);
# 1765|-> 	return is_rsa_key(cert->x509);
# 1766|   }
# 1767|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def493]
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:134:9: warning[-Wanalyzer-mismatching-deallocation]: ‘certdata’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_data_free’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:161:21: enter_function: entry to ‘freerdp_certificate_data_new_from_file’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:164:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:167:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:168:36: call_function: calling ‘freerdp_certificate_data_new_nocopy’ from ‘freerdp_certificate_data_new_from_file’
#  132|   	return certdata;
#  133|   fail:
#  134|-> 	freerdp_certificate_data_free(certdata);
#  135|   	return NULL;
#  136|   }

Error: GCC_ANALYZER_WARNING (CWE-416): [#def494]
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:179:14: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_certificate_data_free’ of ‘data’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:161:21: enter_function: entry to ‘freerdp_certificate_data_new_from_file’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:164:12: branch_false: following ‘false’ branch (when ‘file’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:167:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_data.c:168:36: call_function: calling ‘freerdp_certificate_data_new_nocopy’ from ‘freerdp_certificate_data_new_from_file’
#  177|   		return;
#  178|   
#  179|-> 	free(data->hostname);
#  180|   	freerdp_certificate_free(data->cert);
#  181|   	free(data->cached_subject);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def495]
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:136:16: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_store_load_data(store,  freerdp_certificate_data_get_host(data), (int)freerdp_certificate_data_get_port(data))’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:62:1: enter_function: entry to ‘freerdp_certificate_store_contains_data’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:68:38: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:68:38: call_function: calling ‘freerdp_certificate_store_load_data’ from ‘freerdp_certificate_store_contains_data’
#  134|   	WINPR_ASSERT(store);
#  135|   
#  136|-> 	path = freerdp_certificate_store_get_cert_path(store, host, port);
#  137|   	if (!path)
#  138|   		goto fail;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def496]
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:168:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:151:12: branch_false: following ‘false’ branch (when ‘store’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:154:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:155:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:158:29: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:159:30: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:160:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:161:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:168:9: danger: ‘<unknown>’ leaks here; was allocated at [(5)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/4)
#  166|   	WINPR_PRAGMA_DIAG_PUSH
#  167|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  168|-> 	freerdp_certificate_store_free(store);
#  169|   	WINPR_PRAGMA_DIAG_POP
#  170|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def497]
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:168:9: warning[-Wanalyzer-mismatching-deallocation]: ‘store’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_certificate_store_free’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:149:60: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:151:12: branch_false: following ‘false’ branch (when ‘store’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:154:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:155:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:156:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:168:9: danger: deallocated with ‘freerdp_certificate_store_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  166|   	WINPR_PRAGMA_DIAG_PUSH
#  167|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  168|-> 	freerdp_certificate_store_free(store);
#  169|   	WINPR_PRAGMA_DIAG_POP
#  170|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def498]
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:178:14: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_certificate_store_free’ of ‘store’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:147:22: enter_function: entry to ‘freerdp_certificate_store_new’
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:149:60: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:151:12: branch_false: following ‘false’ branch (when ‘store’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:154:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:168:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/crypto/certificate_store.c:168:9: call_function: calling ‘freerdp_certificate_store_free’ from ‘freerdp_certificate_store_new’
#  176|   		return;
#  177|   
#  178|-> 	free(store->certs_path);
#  179|   	free(store->server_path);
#  180|   	free(store);

Error: COMPILER_WARNING (CWE-1164): [#def499]
FreeRDP-3.12.0/libfreerdp/crypto/per.c:479:13: warning[-Wunused-function]: ‘per_write_string’ defined but not used
#  479 | static void per_write_string(wStream* s, BYTE* str, int length)
#      |             ^~~~~~~~~~~~~~~~
#  477|    */
#  478|   
#  479|-> static void per_write_string(wStream* s, BYTE* str, int length)
#  480|   {
#  481|   	for (int i = 0; i < length; i++)

Error: GCC_ANALYZER_WARNING (CWE-762): [#def500]
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:240:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_key_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_key_free’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:228:16: enter_function: entry to ‘freerdp_key_new_from_pem’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:230:30: call_function: calling ‘freerdp_key_new’ from ‘freerdp_key_new_from_pem’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:230:30: return_function: returning to ‘freerdp_key_new_from_pem’ from ‘freerdp_key_new’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:231:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:232:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:240:9: danger: deallocated with ‘freerdp_key_free’ here; allocation at [(4)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘free’
#  238|   	return key;
#  239|   fail:
#  240|-> 	freerdp_key_free(key);
#  241|   	return NULL;
#  242|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def501]
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:258:9: warning[-Wanalyzer-mismatching-deallocation]: ‘freerdp_key_new()’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_key_free’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:244:16: enter_function: entry to ‘freerdp_key_new_from_file’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:247:30: call_function: calling ‘freerdp_key_new’ from ‘freerdp_key_new_from_file’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:247:30: return_function: returning to ‘freerdp_key_new_from_file’ from ‘freerdp_key_new’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:248:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:249:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:258:9: danger: deallocated with ‘freerdp_key_free’ here; allocation at [(4)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘free’
#  256|   	return key;
#  257|   fail:
#  258|-> 	freerdp_key_free(key);
#  259|   	return NULL;
#  260|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def502]
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:264:16: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_key_new()’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:244:16: enter_function: entry to ‘freerdp_key_new_from_file’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:247:30: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:247:30: call_function: calling ‘freerdp_key_new’ from ‘freerdp_key_new_from_file’
#  262|   rdpPrivateKey* freerdp_key_new(void)
#  263|   {
#  264|-> 	return calloc(1, sizeof(rdpPrivateKey));
#  265|   }
#  266|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def503]
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:303:9: warning[-Wanalyzer-mismatching-deallocation]: ‘_key’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_key_free’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:269:12: branch_false: following ‘false’ branch (when ‘key’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:272:47: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:272:47: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:274:12: branch_false: following ‘false’ branch (when ‘_key’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:277:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:277:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:285:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:285:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:287:55: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:289:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:290:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:303:9: danger: deallocated with ‘freerdp_key_free’ here; allocation at [(3)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/2) expects deallocation with ‘free’
#  301|   	WINPR_PRAGMA_DIAG_PUSH
#  302|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  303|-> 	freerdp_key_free(_key);
#  304|   	WINPR_PRAGMA_DIAG_POP
#  305|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def504]
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:313:9: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_key_free’ of ‘key’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:244:16: enter_function: entry to ‘freerdp_key_new_from_file’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:247:30: call_function: calling ‘freerdp_key_new’ from ‘freerdp_key_new_from_file’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:247:30: return_function: returning to ‘freerdp_key_new_from_file’ from ‘freerdp_key_new’
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:258:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/crypto/privatekey.c:258:9: call_function: calling ‘freerdp_key_free’ from ‘freerdp_key_new_from_file’
#  311|   		return;
#  312|   
#  313|-> 	EVP_PKEY_free(key->evp);
#  314|   	if (key->PrivateExponent)
#  315|   		memset(key->PrivateExponent, 0, key->PrivateExponentLength);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def505]
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1623:12: warning[-Wanalyzer-malloc-leak]: leak of ‘tls_config_read(freerdp_GetConfigFilePath(1, "certificates.json"))’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1666:5: enter_function: entry to ‘tls_verify_certificate’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1690:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: call_function: calling ‘tls_extract_full_pem’ from ‘tls_verify_certificate’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: return_function: returning to ‘tls_verify_certificate’ from ‘tls_extract_full_pem’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1697:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1697:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1703:43: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1703:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1709:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1719:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1737:18: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1737:17: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1739:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1752:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1755:31: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1760:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1768:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1782:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1785:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1785:20: branch_true: following ‘true’ branch (when ‘hostname_match == 0’)...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1786:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1789:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1790:47: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1790:47: call_function: calling ‘tls_config_check_certificate’ from ‘tls_verify_certificate’
# 1621|   	}
# 1622|   	json = WINPR_JSON_Parse(configdata);
# 1623|-> 	if (!json)
# 1624|   	{
# 1625|   		WLog_DBG(TAG, "No valid configuration file '%s' for certificate handling, asking user",

Error: GCC_ANALYZER_WARNING (CWE-401): [#def506]
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1802:28: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_get_issuer(cert)’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1666:5: enter_function: entry to ‘tls_verify_certificate’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1690:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: call_function: calling ‘tls_extract_full_pem’ from ‘tls_verify_certificate’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: return_function: returning to ‘tls_verify_certificate’ from ‘tls_extract_full_pem’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1697:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1697:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1703:43: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1703:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1709:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1719:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1737:18: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1737:17: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1739:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1752:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1755:31: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1760:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1768:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1782:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1785:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1785:20: branch_true: following ‘true’ branch (when ‘hostname_match == 0’)...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1786:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1789:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1790:47: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1794:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1798:40: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1802:28: danger: ‘freerdp_certificate_get_issuer(cert)’ leaks here; was allocated at [(33)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/32)
# 1800|   			char* pem = freerdp_certificate_get_pem(cert, &pem_length);
# 1801|   
# 1802|-> 			if (!pem)
# 1803|   				goto end;
# 1804|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def507]
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1802:28: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_get_subject(cert)’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1666:5: enter_function: entry to ‘tls_verify_certificate’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1690:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: call_function: calling ‘tls_extract_full_pem’ from ‘tls_verify_certificate’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: return_function: returning to ‘tls_verify_certificate’ from ‘tls_extract_full_pem’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1697:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1697:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1703:43: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1703:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1709:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1719:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1737:18: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1737:17: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1739:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1752:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1755:31: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1760:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1768:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1782:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1785:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1785:20: branch_true: following ‘true’ branch (when ‘hostname_match == 0’)...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1786:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1789:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1790:47: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1794:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1799:41: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1802:28: danger: ‘freerdp_certificate_get_subject(cert)’ leaks here; was allocated at [(33)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/32)
# 1800|   			char* pem = freerdp_certificate_get_pem(cert, &pem_length);
# 1801|   
# 1802|-> 			if (!pem)
# 1803|   				goto end;
# 1804|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def508]
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:2064:25: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘alt_names’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1666:5: enter_function: entry to ‘tls_verify_certificate’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1690:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: call_function: calling ‘tls_extract_full_pem’ from ‘tls_verify_certificate’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:14: return_function: returning to ‘tls_verify_certificate’ from ‘tls_extract_full_pem’
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1693:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1697:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1697:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1703:43: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1703:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1709:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1719:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1737:18: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1737:17: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1739:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1752:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1755:31: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1756:29: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1760:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1768:20: release_memory: assuming ‘freerdp_certificate_get_dns_names(cert, & dns_names_count, & dns_names_lengths)’ is NULL
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1768:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1782:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1785:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1785:20: branch_true: following ‘true’ branch (when ‘hostname_match == 0’)...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1786:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1789:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1790:47: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1794:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1802:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1807:29: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1809:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1813:36: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1813:36: branch_true: following ‘true’ branch (when ‘hostname_match == 0’)...
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1814:41: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/crypto/tls.c:1814:41: call_function: calling ‘tls_print_certificate_name_mismatch_error’ from ‘tls_verify_certificate’
# 2062|   		{
# 2063|   			WINPR_ASSERT(alt_names[index]);
# 2064|-> 			WLog_ERR(TAG, "\t %s", alt_names[index]);
# 2065|   		}
# 2066|   	}

Error: CPPCHECK_WARNING (CWE-476): [#def509]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:185: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: tmp
#  183|   	{
#  184|   		void* tmp = malloc(srcSize);
#  185|-> 		memcpy(tmp, src, srcSize);
#  186|   		ArrayList_Append(ctx->strings, tmp);
#  187|   		*((void**)dst) = tmp;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def510]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:390:9: warning[-Wanalyzer-malloc-leak]: leak of ‘scard_context_new()’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:376:13: enter_function: entry to ‘Emulate_SCardEstablishContext’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:385:15: call_function: calling ‘scard_context_new’ from ‘Emulate_SCardEstablishContext’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:385:15: return_function: returning to ‘Emulate_SCardEstablishContext’ from ‘scard_context_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:394:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:396:30: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:390:9: danger: ‘scard_context_new()’ leaks here; was allocated at [(4)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/3)
#  388|   	WINPR_UNUSED(pvReserved2);
#  389|   
#  390|-> 	WLog_Print(smartcard->log, smartcard->log_default_level,
#  391|   	           "SCardEstablishContext { dwScope: %s (0x%08" PRIX32 ")",
#  392|   	           SCardGetScopeString(dwScope), dwScope);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def511]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2337:12: warning[-Wanalyzer-malloc-leak]: leak of ‘item’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2316:12: branch_false: following ‘false’ branch (when ‘DataLen <= 4096’)...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2319:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2319:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2322:16: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2323:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2325:24: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2325:24: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2326:20: branch_false: following ‘false’ branch (when ‘item’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2329:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2330:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2337:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2337:12: branch_true: following ‘true’ branch...
 branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2337:12: danger: ‘item’ leaks here; was allocated at [(7)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/6)
# 2335|   	}
# 2336|   
# 2337|-> 	if (item->freshness > FreshnessCounter)
# 2338|   		return SCARD_W_CACHE_ITEM_STALE;
# 2339|   	item->freshness = FreshnessCounter;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def512]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2341:9: warning[-Wanalyzer-malloc-leak]: leak of ‘item’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2316:12: branch_false: following ‘false’ branch (when ‘DataLen <= 4096’)...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2319:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2319:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2322:16: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2323:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2325:24: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2325:24: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2326:20: branch_false: following ‘false’ branch (when ‘item’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2329:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2330:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2337:13: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2337:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2339:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2341:9: danger: ‘item’ leaks here; was allocated at [(7)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/6)
# 2339|   	item->freshness = FreshnessCounter;
# 2340|   	item->size = DataLen;
# 2341|-> 	memcpy(item->data, Data, DataLen);
# 2342|   
# 2343|   	// NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of item

Error: GCC_ANALYZER_WARNING (CWE-762): [#def513]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2739:9: warning[-Wanalyzer-mismatching-deallocation]: ‘smartcard’ should have been deallocated with ‘free’ but was deallocated with ‘Emulate_Free’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2688:21: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2689:12: branch_false: following ‘false’ branch (when ‘smartcard’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2692:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2694:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2695:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2739:9: danger: deallocated with ‘Emulate_Free’ here; allocation at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 2737|   	WINPR_PRAGMA_DIAG_PUSH
# 2738|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 2739|-> 	Emulate_Free(smartcard);
# 2740|   	WINPR_PRAGMA_DIAG_POP
# 2741|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def514]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2749:9: warning[-Wanalyzer-use-after-free]: use after ‘Emulate_Free’ of ‘context’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2682:28: enter_function: entry to ‘Emulate_New’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2688:21: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2689:12: branch_false: following ‘false’ branch (when ‘smartcard’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2692:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2739:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_emulate.c:2739:9: call_function: calling ‘Emulate_Free’ from ‘Emulate_New’
# 2747|   		return;
# 2748|   
# 2749|-> 	HashTable_Free(context->handles);
# 2750|   	HashTable_Free(context->contexts);
# 2751|   	free(context);

Error: CPPCHECK_WARNING (CWE-476): [#def515]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:275: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: ef
#  273|   	vgidsEF* ef = calloc(1, sizeof(vgidsEF));
#  274|   
#  275|-> 	ef->id = id;
#  276|   	ef->data = Stream_New(NULL, 1024);
#  277|   	if (!ef->data)

Error: GCC_ANALYZER_WARNING (CWE-476): [#def516]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:275:9: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘ef’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1459:6: enter_function: entry to ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1489:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1498:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1501:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1502:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
#  273|   	vgidsEF* ef = calloc(1, sizeof(vgidsEF));
#  274|   
#  275|-> 	ef->id = id;
#  276|   	ef->data = Stream_New(NULL, 1024);
#  277|   	if (!ef->data)

Error: CPPCHECK_WARNING (CWE-476): [#def517]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:276: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: ef
#  274|   
#  275|   	ef->id = id;
#  276|-> 	ef->data = Stream_New(NULL, 1024);
#  277|   	if (!ef->data)
#  278|   	{

Error: CPPCHECK_WARNING (CWE-476): [#def518]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:277: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: ef
#  275|   	ef->id = id;
#  276|   	ef->data = Stream_New(NULL, 1024);
#  277|-> 	if (!ef->data)
#  278|   	{
#  279|   		WLog_ERR(TAG, "Failed to create file data stream");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def519]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:284:14: warning[-Wanalyzer-malloc-leak]: leak of ‘vgids_ef_new(ctx, 40960)’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1459:6: enter_function: entry to ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1489:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1498:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1501:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1502:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1508:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:284:14: danger: ‘vgids_ef_new(ctx, 40960)’ leaks here; was allocated at [(10)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/9)
#  282|   	Stream_SetLength(ef->data, 0);
#  283|   
#  284|-> 	if (!ArrayList_Append(ctx->files, ef))
#  285|   	{
#  286|   		WLog_ERR(TAG, "Failed to add new ef to file list");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def520]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:284:14: warning[-Wanalyzer-malloc-leak]: leak of ‘vgids_ef_new(ctx, 40976)’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1459:6: enter_function: entry to ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1489:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1498:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1501:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1502:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1508:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1514:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1516:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1517:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1517:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1517:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1522:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1522:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1522:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1523:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1527:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1527:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:284:14: danger: ‘vgids_ef_new(ctx, 40976)’ leaks here; was allocated at [(47)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/46)
#  282|   	Stream_SetLength(ef->data, 0);
#  283|   
#  284|-> 	if (!ArrayList_Append(ctx->files, ef))
#  285|   	{
#  286|   		WLog_ERR(TAG, "Failed to add new ef to file list");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def521]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:336:16: warning[-Wanalyzer-malloc-leak]: leak of ‘vgids_ef_new(ctx, 40978)’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1459:6: enter_function: entry to ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1489:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1498:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1501:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1502:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1508:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1514:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1516:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1517:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
#  334|   {
#  335|   	/* Write DO to end of file: 2-Byte ID, 1-Byte Len, Data */
#  336|-> 	return vgids_write_tlv(ef->data, doID, data, dataSize);
#  337|   }
#  338|   

Error: CPPCHECK_WARNING (CWE-476): [#def522]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1442: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: ctx
# 1440|   	vgidsContext* ctx = calloc(1, sizeof(vgidsContext));
# 1441|   
# 1442|-> 	ctx->files = ArrayList_New(FALSE);
# 1443|   	if (!ctx->files)
# 1444|   	{

Error: GCC_ANALYZER_WARNING (CWE-476): [#def523]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1442:9: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘ctx’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1440:29: acquire_memory: this call could return NULL
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1442:9: danger: ‘ctx’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/16/codeFlows/0/threadFlows/0/locations/0)
# 1440|   	vgidsContext* ctx = calloc(1, sizeof(vgidsContext));
# 1441|   
# 1442|-> 	ctx->files = ArrayList_New(FALSE);
# 1443|   	if (!ctx->files)
# 1444|   	{

Error: CPPCHECK_WARNING (CWE-476): [#def524]
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1443: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: ctx
# 1441|   
# 1442|   	ctx->files = ArrayList_New(FALSE);
# 1443|-> 	if (!ctx->files)
# 1444|   	{
# 1445|   		WLog_ERR(TAG, "Failed to create files array list");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def525]
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1409:12: warning[-Wanalyzer-malloc-leak]: leak of ‘*context.cache’
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1363:6: enter_function: entry to ‘gdi_init_ex’
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1380:12: branch_false: following ‘false’ branch (when ‘gdi’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1383:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1386:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1389:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1401:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1404:28: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1406:14: call_function: calling ‘gdi_init_primary’ from ‘gdi_init_ex’
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1406:14: return_function: returning to ‘gdi_init_ex’ from ‘gdi_init_primary’
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1406:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1409:32: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1409:32: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/gdi/gdi.c:1409:12: danger: ‘*context.cache’ leaks here; was allocated at [(27)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/26)
# 1407|   		goto fail;
# 1408|   
# 1409|-> 	if (!(context->cache = cache_new(context)))
# 1410|   		goto fail;
# 1411|   

Error: GCC_ANALYZER_WARNING: [#def526]
FreeRDP-3.12.0/libfreerdp/gdi/shape.c:178:33: warning[-Wanalyzer-overlapping-buffers]: overlapping buffers passed as arguments to ‘memcpy’
FreeRDP-3.12.0/libfreerdp/gdi/shape.c:153:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/gdi/shape.c:156:14: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/gdi/shape.c:156:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/gdi/shape.c:159:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/gdi/shape.c:175:43: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/gdi/shape.c:177:46: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/gdi/shape.c:178:33: danger: overlapping buffers passed as arguments to ‘memcpy’
#  176|   			{
#  177|   				BYTE* dstp = gdi_get_bitmap_pointer(hdc, nXDest, nYDest + y);
#  178|-> 				memcpy(dstp, srcp, 1ull * WINPR_ASSERTING_INT_CAST(size_t, nWidth) * formatSize);
#  179|   			}
#  180|   

Error: COMPILER_WARNING (CWE-1164): [#def527]
FreeRDP-3.12.0/libfreerdp/locale/keyboard.c: scope_hint: At top level
FreeRDP-3.12.0/libfreerdp/locale/keyboard.c:266:12: warning[-Wunused-function]: ‘freerdp_keyboard_init_apple’ defined but not used
#  266 | static int freerdp_keyboard_init_apple(WINPR_ATTR_UNUSED const DWORD* keyboardLayoutId,
#      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
#  264|   }
#  265|   
#  266|-> static int freerdp_keyboard_init_apple(WINPR_ATTR_UNUSED const DWORD* keyboardLayoutId,
#  267|                                          DWORD* x11_keycode_to_rdp_scancode, size_t count)
#  268|   {

Error: COMPILER_WARNING (CWE-477): [#def528]
FreeRDP-3.12.0/libfreerdp/locale/keyboard.c: scope_hint: In function ‘freerdp_keyboard_init_ex’
FreeRDP-3.12.0/libfreerdp/locale/keyboard.c:398:9: warning[-Wdeprecated-declarations]: ‘freerdp_keyboard_init’ is deprecated: since 3.11.0, implement yourself in client
#  398 |         DWORD res = freerdp_keyboard_init(keyboardLayoutId);
#      |         ^~~~~
FreeRDP-3.12.0/libfreerdp/locale/keyboard.c:303:7: note: declared here
#  303 | DWORD freerdp_keyboard_init(DWORD keyboardLayoutId)
#      |       ^~~~~~~~~~~~~~~~~~~~~
#  396|   DWORD freerdp_keyboard_init_ex(DWORD keyboardLayoutId, const char* keyboardRemappingList)
#  397|   {
#  398|-> 	DWORD res = freerdp_keyboard_init(keyboardLayoutId);
#  399|   
#  400|   	memset(REMAPPING_TABLE, 0, sizeof(REMAPPING_TABLE));

Error: COMPILER_WARNING (CWE-477): [#def529]
FreeRDP-3.12.0/libfreerdp/locale/keyboard.c:398:9: warning[-Wdeprecated-declarations]: ‘freerdp_keyboard_init’ is deprecated: since 3.11.0, implement yourself in client
#  396|   DWORD freerdp_keyboard_init_ex(DWORD keyboardLayoutId, const char* keyboardRemappingList)
#  397|   {
#  398|-> 	DWORD res = freerdp_keyboard_init(keyboardLayoutId);
#  399|   
#  400|   	memset(REMAPPING_TABLE, 0, sizeof(REMAPPING_TABLE));

Error: GCC_ANALYZER_WARNING (CWE-416): [#def530]
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1503:22: warning[-Wanalyzer-use-after-free]: use after ‘freerdp_keyboard_layouts_free’ of ‘current’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1510:22: enter_function: entry to ‘freerdp_keyboard_get_layouts’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:22: call_function: calling ‘rdp_keyboard_layout_clone_append’ from ‘freerdp_keyboard_get_layouts’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:22: return_function: returning to ‘freerdp_keyboard_get_layouts’ from ‘rdp_keyboard_layout_clone_append’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1525:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1543:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1543:9: call_function: calling ‘freerdp_keyboard_layouts_free’ from ‘freerdp_keyboard_get_layouts’
# 1501|   	{
# 1502|   		RDP_KEYBOARD_LAYOUT* current = &layouts[x];
# 1503|-> 		free(current->name);
# 1504|   		current++;
# 1505|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def531]
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1543:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1510:22: enter_function: entry to ‘freerdp_keyboard_get_layouts’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1522:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:22: call_function: calling ‘rdp_keyboard_layout_clone_append’ from ‘freerdp_keyboard_get_layouts’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:22: return_function: returning to ‘freerdp_keyboard_get_layouts’ from ‘rdp_keyboard_layout_clone_append’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1525:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1543:9: danger: ‘<unknown>’ leaks here; was allocated at [(18)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/17)
# 1541|   	return layouts;
# 1542|   fail:
# 1543|-> 	freerdp_keyboard_layouts_free(layouts, num);
# 1544|   	return NULL;
# 1545|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def532]
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1543:9: warning[-Wanalyzer-mismatching-deallocation]: ‘layouts’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_keyboard_layouts_free’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1510:22: enter_function: entry to ‘freerdp_keyboard_get_layouts’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1522:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:22: call_function: calling ‘rdp_keyboard_layout_clone_append’ from ‘freerdp_keyboard_get_layouts’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:22: return_function: returning to ‘freerdp_keyboard_get_layouts’ from ‘rdp_keyboard_layout_clone_append’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1524:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1525:25: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1543:9: danger: deallocated with ‘freerdp_keyboard_layouts_free’ here
# 1541|   	return layouts;
# 1542|   fail:
# 1543|-> 	freerdp_keyboard_layouts_free(layouts, num);
# 1544|   	return NULL;
# 1545|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def533]
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1660:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pages’ should have been deallocated with ‘free’ but was deallocated with ‘freerdp_codepages_free’
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1634:31: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1636:12: branch_false: following ‘false’ branch (when ‘pages’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1639:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/locale/keyboard_layout.c:1660:9: danger: deallocated with ‘freerdp_codepages_free’ here; allocation at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 1658|   	return pages;
# 1659|   fail:
# 1660|-> 	freerdp_codepages_free(pages);
# 1661|   	return NULL;
# 1662|   }

Error: COMPILER_WARNING: [#def534]
FreeRDP-3.12.0/libfreerdp/primitives/sse/prim_avxsse.h:65:16: note[note]: called from here
#   63|   {
#   64|   	const __m128i* mptr = WINPR_CXX_COMPAT_CAST(const __m128i*, ptr);
#   65|-> 	return _mm_lddqu_si128(mptr);
#   66|   }
#   67|   

Error: COMPILER_WARNING: [#def535]
FreeRDP-3.12.0/libfreerdp/primitives/sse/prim_copy_avx2.c:39:1: warning[-Wpsabi]: AVX vector return without AVX enabled changes the ABI
#   37|   static inline __m256i mm256_set_epu32(uint32_t i0, uint32_t i1, uint32_t i2, uint32_t i3,
#   38|                                         uint32_t i4, uint32_t i5, uint32_t i6, uint32_t i7)
#   39|-> {
#   40|   	return _mm256_set_epi32((int32_t)i0, (int32_t)i1, (int32_t)i2, (int32_t)i3, (int32_t)i4,
#   41|   	                        (int32_t)i5, (int32_t)i6, (int32_t)i7);

Error: COMPILER_WARNING: [#def536]
FreeRDP-3.12.0/libfreerdp/primitives/sse/prim_copy_avx2.c:40:16: note[note]: called from here
#   38|                                         uint32_t i4, uint32_t i5, uint32_t i6, uint32_t i7)
#   39|   {
#   40|-> 	return _mm256_set_epi32((int32_t)i0, (int32_t)i1, (int32_t)i2, (int32_t)i3, (int32_t)i4,
#   41|   	                        (int32_t)i5, (int32_t)i6, (int32_t)i7);
#   42|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def537]
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:55:16: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:193:10: enter_function: entry to ‘pcap_open’
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:200:12: branch_false: following ‘false’ branch (when ‘pcap’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:203:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:203:22: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:208:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:211:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:211:12: branch_false: following ‘false’ branch (when ‘write == 0’)...
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:225:23: call_function: inlined call to ‘_fseeki64’ from ‘pcap_open’
FreeRDP-3.12.0/libfreerdp/utils/pcap.c:228:22: call_function: calling ‘pcap_read_header’ from ‘pcap_open’
#   53|   	WINPR_ASSERT(header);
#   54|   
#   55|-> 	return fread(header, sizeof(pcap_header), 1, pcap->fp) == 1;
#   56|   }
#   57|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def538]
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:104:32: warning[-Wanalyzer-malloc-leak]: leak of ‘pContext’
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:98:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:100:35: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:102:21: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:103:20: branch_false: following ‘false’ branch (when ‘pContext’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:106:37: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:108:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:118:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:118:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:131:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:104:32: danger: ‘pContext’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#  102|   		    calloc(1, sizeof(struct s_scard_context_element));
#  103|   		if (!pContext)
#  104|-> 			return STATUS_NO_MEMORY;
#  105|   
#  106|   		pContext->fn_free = smartcard->fn_free;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def539]
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:964:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cur’
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:934:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:943:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:943:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:945:21: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:945:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:948:34: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:950:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:952:21: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:952:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:954:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:943:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:945:21: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:959:32: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:961:64: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:961:43: release_memory: ‘cur’ is NULL
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:964:40: danger: dereference of NULL ‘cur’
#  962|   		ReaderState_Return* rout = &ret.rgReaderStates[index];
#  963|   
#  964|-> 		rout->dwCurrentState = cur->dwCurrentState;
#  965|   		rout->dwEventState = cur->dwEventState;
#  966|   		rout->cbAtr = cur->cbAtr;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def540]
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1028:40: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘cur’
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:996:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1005:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1005:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1007:21: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1007:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1011:42: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1014:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1016:21: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1016:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1018:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1005:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1007:21: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1023:32: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1025:64: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1025:43: release_memory: ‘cur’ is NULL
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1028:40: danger: dereference of NULL ‘cur’
# 1026|   		ReaderState_Return* rout = &ret.rgReaderStates[index];
# 1027|   
# 1028|-> 		rout->dwCurrentState = cur->dwCurrentState;
# 1029|   		rout->dwEventState = cur->dwEventState;
# 1030|   		rout->cbAtr = cur->cbAtr;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def541]
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1946:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1879:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1882:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1882:26: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1883:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1886:22: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1887:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1888:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1946:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/2)
# 1944|   	WINPR_PRAGMA_DIAG_PUSH
# 1945|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1946|-> 	smartcard_call_context_free(ctx);
# 1947|   	WINPR_PRAGMA_DIAG_POP
# 1948|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def542]
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1946:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘smartcard_call_context_free’
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1878:15: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1879:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1882:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1883:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1884:17: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1946:9: danger: deallocated with ‘smartcard_call_context_free’ here; allocation at [(1)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
# 1944|   	WINPR_PRAGMA_DIAG_PUSH
# 1945|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1946|-> 	smartcard_call_context_free(ctx);
# 1947|   	WINPR_PRAGMA_DIAG_POP
# 1948|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def543]
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:2058:14: warning[-Wanalyzer-use-after-free]: use after ‘smartcard_call_context_free’ of ‘ctx’
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1872:21: enter_function: entry to ‘smartcard_call_context_new’
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1878:15: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1879:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1882:26: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1946:9: release_memory: deallocated here
FreeRDP-3.12.0/libfreerdp/utils/smartcard_call.c:1946:9: call_function: calling ‘smartcard_call_context_free’ from ‘smartcard_call_context_new’
# 2056|   {
# 2057|   	WINPR_ASSERT(ctx);
# 2058|-> 	if (!ctx->stopEvent)
# 2059|   		return TRUE;
# 2060|   

Error: COMPILER_WARNING (CWE-563): [#def544]
FreeRDP-3.12.0/libfreerdp/utils/smartcard_operations.c: scope_hint: In function ‘smartcard_irp_device_control_decode’
FreeRDP-3.12.0/libfreerdp/utils/smartcard_operations.c:553:16: warning[-Wunused-but-set-variable]: variable ‘outputBufferLength’ set but not used
#  553 |         UINT32 outputBufferLength = 0;
#      |                ^~~~~~~~~~~~~~~~~~
#  551|   	UINT32 offset = 0;
#  552|   	UINT32 ioControlCode = 0;
#  553|-> 	UINT32 outputBufferLength = 0;
#  554|   	UINT32 inputBufferLength = 0;
#  555|   

Error: CPPCHECK_WARNING (CWE-457): [#def545]
FreeRDP-3.12.0/libfreerdp/utils/smartcard_pack.c:403: warning[uninitvar]: Uninitialized variable: buffer
#  401|   	}
#  402|   
#  403|-> 	return buffer;
#  404|   }
#  405|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def546]
FreeRDP-3.12.0/libfreerdp/utils/test/TestRingBuffer.c:95:24: warning[-Wanalyzer-malloc-leak]: leak of ‘tmpBuf’
FreeRDP-3.12.0/libfreerdp/utils/test/TestRingBuffer.c:92:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/utils/test/TestRingBuffer.c:98:25: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestRingBuffer.c:98:25: acquire_memory: allocated here
FreeRDP-3.12.0/libfreerdp/utils/test/TestRingBuffer.c:99:12: branch_false: following ‘false’ branch (when ‘tmpBuf’ is non-NULL)...
 branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestRingBuffer.c:102:25: branch_true: following ‘true’ branch (when ‘i != 50’)...
FreeRDP-3.12.0/libfreerdp/utils/test/TestRingBuffer.c:103:23: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/utils/test/TestRingBuffer.c:95:24: danger: ‘tmpBuf’ leaks here; was allocated at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#   93|   	{
#   94|   		(void)fprintf(stderr, "unable to initialize ringbuffer\n");
#   95|-> 		return -1;
#   96|   	}
#   97|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def547]
FreeRDP-3.12.0/rdtk/librdtk/rdtk_font.c:163:12: warning[-Wanalyzer-malloc-leak]: leak of ‘rdtk_font_load_descriptor_file(filename, & size)’
FreeRDP-3.12.0/rdtk/librdtk/rdtk_font.c:593:12: enter_function: entry to ‘rdtk_font_load_descriptor’
FreeRDP-3.12.0/rdtk/librdtk/rdtk_font.c:598:24: acquire_memory: allocated here
FreeRDP-3.12.0/rdtk/librdtk/rdtk_font.c:598:24: call_function: calling ‘rdtk_font_load_descriptor_file’ from ‘rdtk_font_load_descriptor’
#  161|   	FILE* fp = winpr_fopen(filename, "r");
#  162|   
#  163|-> 	if (!fp)
#  164|   		return NULL;
#  165|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def548]
FreeRDP-3.12.0/rdtk/librdtk/rdtk_font.c:175:31: warning[-Wanalyzer-malloc-leak]: leak of ‘rdtk_font_load_descriptor_file(filename, & size)’
FreeRDP-3.12.0/rdtk/librdtk/rdtk_font.c:593:12: enter_function: entry to ‘rdtk_font_load_descriptor’
FreeRDP-3.12.0/rdtk/librdtk/rdtk_font.c:598:24: acquire_memory: allocated here
FreeRDP-3.12.0/rdtk/librdtk/rdtk_font.c:598:24: call_function: calling ‘rdtk_font_load_descriptor_file’ from ‘rdtk_font_load_descriptor’
#  173|   		goto fail;
#  174|   
#  175|-> 	char* buffer = (char*)calloc(fileSize.s + 4, sizeof(char));
#  176|   
#  177|   	if (!buffer)

Error: COMPILER_WARNING (CWE-686): [#def549]
FreeRDP-3.12.0/redhat-linux-build/CMakeFiles/CMakeScratch/TryCompile-YUIjsE/CheckFunctionExists.c:7:3: warning[-Wbuiltin-declaration-mismatch]: conflicting types for built-in function ‘pow’; expected ‘double(double,  double)’

Error: GCC_ANALYZER_WARNING (CWE-688): [#def550]
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def551]
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def552]
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: danger: use of uninitialized value ‘*<unknown>’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def553]
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:31: danger: use of uninitialized value ‘*arg’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def554]
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:184:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def555]
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/client/common/test/TestClient.c:184:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def556]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:127:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:164:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:165:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:168:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:203:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  203|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  204|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  205|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  206|         testToRun = i;
#  207|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def557]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:127:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:164:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:165:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:168:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:203:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  203|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  204|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  205|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  206|         testToRun = i;
#  207|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def558]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:127:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:164:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:165:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:168:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:203:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: danger: use of uninitialized value ‘*<unknown>’ here
#  203|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  204|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  205|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  206|         testToRun = i;
#  207|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def559]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:127:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:164:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:165:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:168:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:203:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:31: danger: use of uninitialized value ‘*arg’ here
#  203|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  204|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  205|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  206|         testToRun = i;
#  207|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def560]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:209:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:127:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:164:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:165:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:168:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:203:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:209:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:209:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  207|         ac -= 2;
#  208|         av += 2;
#  209|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  210|         testToRun = i;
#  211|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def561]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:209:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:127:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:164:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:165:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:168:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:172:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:200:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:201:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:203:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:204:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:205:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:209:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/codec/test/TestFreeRDPCodec.c:209:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  207|         ac -= 2;
#  208|         av += 2;
#  209|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  210|         testToRun = i;
#  211|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def562]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def563]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def564]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: danger: use of uninitialized value ‘*<unknown>’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def565]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:31: danger: use of uninitialized value ‘*arg’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def566]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:179:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def567]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/common/test/TestCommon.c:179:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def568]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def569]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def570]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: danger: use of uninitialized value ‘*<unknown>’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def571]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:31: danger: use of uninitialized value ‘*arg’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def572]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:179:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def573]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/core/test/TestCore.c:179:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def574]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def575]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def576]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: danger: use of uninitialized value ‘*<unknown>’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def577]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:31: danger: use of uninitialized value ‘*arg’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def578]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:179:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def579]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/crypto/test/TestFreeRDPCrypto.c:179:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def580]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def581]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def582]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: danger: use of uninitialized value ‘*<unknown>’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def583]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:31: danger: use of uninitialized value ‘*arg’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def584]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:184:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def585]
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/libfreerdp/utils/test/TestFreeRDPUtils.c:184:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def586]
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def587]
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def588]
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def589]
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def590]
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def591]
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/rdtk/librdtk/test/TestRdTk.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def592]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def593]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def594]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def595]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def596]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def597]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/bcrypt/test/TestBCrypt.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def598]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def599]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def600]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def601]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def602]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def603]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/clipboard/test/TestClipboard.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def604]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def605]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def606]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: danger: use of uninitialized value ‘*<unknown>’ here
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def607]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:31: danger: use of uninitialized value ‘*arg’ here
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def608]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:194:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:194:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:194:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  192|         ac -= 2;
#  193|         av += 2;
#  194|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  195|         testToRun = i;
#  196|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def609]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:194:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:190:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:194:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crt/test/TestCrt.c:194:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  192|         ac -= 2;
#  193|         av += 2;
#  194|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  195|         testToRun = i;
#  196|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def610]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def611]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def612]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: danger: use of uninitialized value ‘*<unknown>’ here
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def613]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:31: danger: use of uninitialized value ‘*arg’ here
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def614]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:199:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:199:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:199:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  197|         ac -= 2;
#  198|         av += 2;
#  199|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  200|         testToRun = i;
#  201|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def615]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:199:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:195:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:199:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/crypto/test/TestCrypto.c:199:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  197|         ac -= 2;
#  198|         av += 2;
#  199|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  200|         testToRun = i;
#  201|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def616]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def617]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def618]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def619]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def620]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def621]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/dsparse/test/TestDsParse.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def622]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:107:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:144:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:145:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:148:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:183:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  183|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  184|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  185|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  186|         testToRun = i;
#  187|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def623]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:107:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:144:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:145:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:148:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:183:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  183|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  184|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  185|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  186|         testToRun = i;
#  187|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def624]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:107:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:144:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:145:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:148:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:183:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: danger: use of uninitialized value ‘*<unknown>’ here
#  183|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  184|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  185|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  186|         testToRun = i;
#  187|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def625]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:107:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:144:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:145:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:148:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:183:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:31: danger: use of uninitialized value ‘*arg’ here
#  183|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  184|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  185|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  186|         testToRun = i;
#  187|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def626]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:189:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:107:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:144:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:145:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:148:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:183:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:189:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:189:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  187|         ac -= 2;
#  188|         av += 2;
#  189|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  190|         testToRun = i;
#  191|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def627]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:189:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:107:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:144:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:145:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:148:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:152:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:180:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:181:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:183:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:184:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:185:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:189:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/environment/test/TestEnvironment.c:189:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  187|         ac -= 2;
#  188|         av += 2;
#  189|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  190|         testToRun = i;
#  191|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def628]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def629]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def630]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def631]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def632]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def633]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/error/test/TestError.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def634]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:137:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:174:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:175:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:178:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:213:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  213|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  214|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  215|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  216|         testToRun = i;
#  217|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def635]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:137:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:174:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:175:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:178:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:213:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  213|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  214|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  215|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  216|         testToRun = i;
#  217|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def636]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:137:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:174:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:175:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:178:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:213:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: danger: use of uninitialized value ‘*<unknown>’ here
#  213|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  214|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  215|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  216|         testToRun = i;
#  217|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def637]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:137:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:174:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:175:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:178:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:213:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:31: danger: use of uninitialized value ‘*arg’ here
#  213|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  214|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  215|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  216|         testToRun = i;
#  217|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def638]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:219:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:137:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:174:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:175:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:178:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:213:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:219:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:219:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  217|         ac -= 2;
#  218|         av += 2;
#  219|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  220|         testToRun = i;
#  221|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def639]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:219:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:137:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:174:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:175:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:178:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:182:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:210:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:211:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:213:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:214:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:215:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:219:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/file/test/TestFile.c:219:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  217|         ac -= 2;
#  218|         av += 2;
#  219|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  220|         testToRun = i;
#  221|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def640]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def641]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def642]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: danger: use of uninitialized value ‘*<unknown>’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def643]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:31: danger: use of uninitialized value ‘*arg’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def644]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:184:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def645]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/interlocked/test/TestInterlocked.c:184:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def646]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def647]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def648]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def649]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def650]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def651]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/io/test/TestIo.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def652]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def653]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def654]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: danger: use of uninitialized value ‘*<unknown>’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def655]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:31: danger: use of uninitialized value ‘*arg’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def656]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:184:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def657]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/library/test/TestLibrary.c:184:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def658]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def659]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def660]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def661]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def662]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def663]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/memory/test/TestMemory.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def664]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def665]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def666]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: danger: use of uninitialized value ‘*<unknown>’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def667]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:31: danger: use of uninitialized value ‘*arg’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def668]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:179:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def669]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/ncrypt/test/TestNCrypt.c:179:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def670]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def671]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def672]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def673]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def674]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def675]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/nt/test/TestNt.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def676]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:207:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:244:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:245:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:248:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:283:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  283|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  284|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  285|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  286|         testToRun = i;
#  287|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def677]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:207:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:244:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:245:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:248:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:283:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  283|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  284|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  285|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  286|         testToRun = i;
#  287|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def678]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:207:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:244:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:245:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:248:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:283:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: danger: use of uninitialized value ‘*<unknown>’ here
#  283|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  284|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  285|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  286|         testToRun = i;
#  287|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def679]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:207:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:244:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:245:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:248:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:283:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:31: danger: use of uninitialized value ‘*arg’ here
#  283|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  284|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  285|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  286|         testToRun = i;
#  287|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def680]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:289:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:207:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:244:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:245:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:248:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:283:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:289:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:289:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  287|         ac -= 2;
#  288|         av += 2;
#  289|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  290|         testToRun = i;
#  291|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def681]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:289:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:207:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:244:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:245:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:248:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:252:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:280:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:281:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:283:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:284:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:285:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:289:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/path/test/TestPath.c:289:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  287|         ac -= 2;
#  288|         av += 2;
#  289|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  290|         testToRun = i;
#  291|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def682]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def683]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def684]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: danger: use of uninitialized value ‘*<unknown>’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def685]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:31: danger: use of uninitialized value ‘*arg’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def686]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:184:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def687]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pipe/test/TestPipe.c:184:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def688]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def689]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def690]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: danger: use of uninitialized value ‘*<unknown>’ here
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def691]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:31: danger: use of uninitialized value ‘*arg’ here
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def692]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:194:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:194:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:194:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  192|         ac -= 2;
#  193|         av += 2;
#  194|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  195|         testToRun = i;
#  196|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def693]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:194:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:190:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:194:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/pool/test/TestPool.c:194:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  192|         ac -= 2;
#  193|         av += 2;
#  194|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  195|         testToRun = i;
#  196|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def694]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def695]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def696]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def697]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def698]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def699]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/security/test/TestSecurity.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def700]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def701]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def702]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: danger: use of uninitialized value ‘*<unknown>’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def703]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:31: danger: use of uninitialized value ‘*arg’ here
#  168|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  169|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  170|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  171|         testToRun = i;
#  172|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def704]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:174:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def705]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:174:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:92:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:129:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:130:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:133:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:137:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:165:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:166:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:168:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:169:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:170:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:174:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/smartcard/test/TestSmartCard.c:174:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  172|         ac -= 2;
#  173|         av += 2;
#  174|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  175|         testToRun = i;
#  176|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def706]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def707]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def708]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: danger: use of uninitialized value ‘*<unknown>’ here
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def709]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:31: danger: use of uninitialized value ‘*arg’ here
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def710]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:199:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:199:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:199:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  197|         ac -= 2;
#  198|         av += 2;
#  199|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  200|         testToRun = i;
#  201|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def711]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:199:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:195:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:199:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sspi/test/TestSspi.c:199:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  197|         ac -= 2;
#  198|         av += 2;
#  199|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  200|         testToRun = i;
#  201|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def712]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:142:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:179:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:180:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:183:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:218:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  218|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  219|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  220|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  221|         testToRun = i;
#  222|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def713]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:142:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:179:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:180:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:183:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:218:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  218|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  219|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  220|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  221|         testToRun = i;
#  222|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def714]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:142:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:179:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:180:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:183:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:218:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: danger: use of uninitialized value ‘*<unknown>’ here
#  218|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  219|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  220|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  221|         testToRun = i;
#  222|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def715]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:142:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:179:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:180:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:183:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:218:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:31: danger: use of uninitialized value ‘*arg’ here
#  218|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  219|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  220|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  221|         testToRun = i;
#  222|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def716]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:224:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:142:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:179:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:180:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:183:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:218:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:224:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:224:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  222|         ac -= 2;
#  223|         av += 2;
#  224|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  225|         testToRun = i;
#  226|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def717]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:224:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:142:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:179:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:180:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:183:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:187:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:215:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:216:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:218:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:219:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:220:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:224:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/synch/test/TestSynch.c:224:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  222|         ac -= 2;
#  223|         av += 2;
#  224|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  225|         testToRun = i;
#  226|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def718]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def719]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def720]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: danger: use of uninitialized value ‘*<unknown>’ here
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def721]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:31: danger: use of uninitialized value ‘*arg’ here
#  188|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  189|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  190|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  191|         testToRun = i;
#  192|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def722]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:194:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:194:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:194:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  192|         ac -= 2;
#  193|         av += 2;
#  194|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  195|         testToRun = i;
#  196|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def723]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:194:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:112:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:149:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:150:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:153:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:157:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:185:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:186:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:188:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:189:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:190:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:194:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/sysinfo/test/TestSysInfo.c:194:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  192|         ac -= 2;
#  193|         av += 2;
#  194|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  195|         testToRun = i;
#  196|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def724]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def725]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def726]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: danger: use of uninitialized value ‘*<unknown>’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def727]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:31: danger: use of uninitialized value ‘*arg’ here
#  178|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  179|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  180|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  181|         testToRun = i;
#  182|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def728]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:184:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def729]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:184:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:102:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:139:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:140:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:143:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:147:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:175:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:176:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:178:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:179:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:180:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:184:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/thread/test/TestThread.c:184:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  182|         ac -= 2;
#  183|         av += 2;
#  184|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  185|         testToRun = i;
#  186|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def730]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:192:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:229:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:230:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:233:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:237:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:237:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:265:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:265:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:268:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  268|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  269|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  270|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  271|         testToRun = i;
#  272|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def731]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:192:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:229:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:230:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:233:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:237:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:237:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:265:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:265:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:268:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:31: danger: use of uninitialized value ‘*<unknown>’ here
#  268|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  269|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  270|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  271|         testToRun = i;
#  272|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def732]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:274:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:192:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:208:17: branch_true: following ‘true’ branch (when ‘i != 21’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:209:30: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:213:8: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:217:9: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:217:8: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:222:5: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:229:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:233:7: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:233:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:237:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:237:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:265:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:265:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:268:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:274:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:274:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  272|         ac -= 2;
#  273|         av += 2;
#  274|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  275|         testToRun = i;
#  276|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def733]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:274:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:192:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:229:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:230:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:233:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:237:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:237:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:265:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:265:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:266:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:268:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:269:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:270:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:274:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/utils/test/TestWinPRUtils.c:274:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  272|         ac -= 2;
#  273|         av += 2;
#  274|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  275|         testToRun = i;
#  276|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def734]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def735]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def736]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: danger: use of uninitialized value ‘*<unknown>’ here
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def737]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:31: danger: use of uninitialized value ‘*arg’ here
#  193|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  194|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  195|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  196|         testToRun = i;
#  197|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def738]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:199:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:199:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:199:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  197|         ac -= 2;
#  198|         av += 2;
#  199|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  200|         testToRun = i;
#  201|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def739]
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:199:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:117:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:154:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:155:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:158:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:162:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:190:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:191:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:193:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:194:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:195:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:199:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/libwinpr/wtsapi/test/TestWtsApi.c:199:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  197|         ac -= 2;
#  198|         av += 2;
#  199|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  200|         testToRun = i;
#  201|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def740]
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: danger: argument 2 (‘arg’) NULL where non-null expected
#argument 2 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def741]
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#argument 1 of ‘__builtin_strstr’ must be non-null
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def742]
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*<unknown>’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: danger: use of uninitialized value ‘*<unknown>’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-457): [#def743]
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*arg’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:8: branch_true: following ‘true’ branch (when ‘partial_match != 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:31: danger: use of uninitialized value ‘*arg’ here
#  173|     for (i = 0; i < NumTests && testToRun == -1; ++i) {
#  174|       char *test_name = lowercase(cmakeGeneratedFunctionMapEntries[i].name);
#  175|->     if (partial_match != 0 && strstr(test_name, arg) != CM_NULL) { /* NOLINT */
#  176|         testToRun = i;
#  177|         ac -= 2;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def744]
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘arg’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:179:38: danger: argument 2 (‘arg’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-688): [#def745]
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:179:38: warning[-Wanalyzer-null-argument]: use of NULL ‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’ where non-null expected
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:97:5: enter_function: entry to ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:134:6: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:135:22: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:138:6: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:142:6: branch_false: following ‘false’ branch (when ‘run_all != 1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:170:6: branch_true: following ‘true’ branch (when ‘testToRun == -1’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:24: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:171:11: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:173:15: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:33: branch_true: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: call_function: calling ‘lowercase’ from ‘main’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:174:23: return_function: returning to ‘main’ from ‘lowercase’
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:175:8: branch_false: following ‘false’ branch (when ‘partial_match == 0’)...
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:179:38: branch_false: ...to here
FreeRDP-3.12.0/redhat-linux-build/winpr/test/TestWinPR.c:179:38: danger: argument 1 (‘lowercase(cmakeGeneratedFunctionMapEntries[i].name)’) NULL where non-null expected
#  177|         ac -= 2;
#  178|         av += 2;
#  179|->     } else if (partial_match == 0 && strcmp(test_name, arg) == 0) {
#  180|         testToRun = i;
#  181|         ac--;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def746]
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:417:40: warning[-Wanalyzer-malloc-leak]: leak of ‘DynamicChannelContext_new(*<unknown>.log, *<unknown>.ps, *<unknown>.pointer, (unsigned int)dynChannelId)’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:232:24: enter_function: entry to ‘DynvcTrackerPeekFn’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:266:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:269:9: call_function: inlined call to ‘stream_read_u8’ from ‘DynvcTrackerPeekFn’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:296:25: call_function: calling ‘dynvc_read_varInt’ from ‘DynvcTrackerPeekFn’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:296:25: return_function: returning to ‘DynvcTrackerPeekFn’ from ‘dynvc_read_varInt’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:356:28: branch_false: following ‘false’ branch (when ‘lastPacket != 0’)...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:359:28: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:359:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:361:59: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:366:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:389:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:394:46: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:394:46: call_function: calling ‘DynamicChannelContext_new’ from ‘DynvcTrackerPeekFn’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:394:46: return_function: returning to ‘DynvcTrackerPeekFn’ from ‘DynamicChannelContext_new’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:396:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:403:33: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:405:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:414:33: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_drdynvc.c:417:40: danger: ‘DynamicChannelContext_new(*<unknown>.log, *<unknown>.ps, *<unknown>.pointer, (unsigned int)dynChannelId)’ leaks here; was allocated at [(27)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/26)
#  415|   
#  416|   				// NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert owns dynChannel
#  417|-> 				return channelTracker_flushCurrent(tracker, firstPacket, lastPacket, FALSE);
#  418|   			}
#  419|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def747]
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1480:9: warning[-Wanalyzer-malloc-leak]: leak of ‘rdpdr’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1718:6: enter_function: entry to ‘pf_channel_rdpdr_client_new’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1726:17: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1727:12: branch_false: following ‘false’ branch (when ‘rdpdr’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1729:22: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1733:14: call_function: calling ‘pf_channel_rdpdr_common_context_new’ from ‘pf_channel_rdpdr_client_new’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1733:14: return_function: returning to ‘pf_channel_rdpdr_client_new’ from ‘pf_channel_rdpdr_common_context_new’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1733:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1734:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1480:9: danger: ‘rdpdr’ leaks here; was allocated at [(2)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/1)
# 1478|   	pf_channel_rdpdr_common_context_free(&entry->common);
# 1479|   	Queue_Free(entry->queue);
# 1480|-> 	free(entry);
# 1481|   }
# 1482|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def748]
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1747:12: warning[-Wanalyzer-malloc-leak]: leak of ‘rdpdr’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1718:6: enter_function: entry to ‘pf_channel_rdpdr_client_new’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1726:17: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1727:12: branch_false: following ‘false’ branch (when ‘rdpdr’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1729:22: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1733:14: call_function: calling ‘pf_channel_rdpdr_common_context_new’ from ‘pf_channel_rdpdr_client_new’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1733:14: return_function: returning to ‘pf_channel_rdpdr_client_new’ from ‘pf_channel_rdpdr_common_context_new’
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1733:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1736:9: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1741:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1743:15: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/channels/pf_channel_rdpdr.c:1747:12: danger: ‘rdpdr’ leaks here; was allocated at [(2)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/1)
# 1745|   	obj->fnObjectNew = stream_copy;
# 1746|   	obj->fnObjectFree = stream_free;
# 1747|-> 	if (!HashTable_Insert(pc->interceptContextMap, RDPDR_SVC_CHANNEL_NAME, rdpdr))
# 1748|   		goto fail;
# 1749|   	// NOLINTNEXTLINE(clang-analyzer-unix.Malloc): HashTable_Insert takes ownership of rdpdr

Error: COMPILER_WARNING (CWE-1164): [#def749]
FreeRDP-3.12.0/server/proxy/modules/bitmap-filter/bitmap-filter.cpp:312:13: warning[-Wunused-function]: ‘BOOL filter_forward_empty_offer(const char*, proxyDynChannelInterceptData*, size_t, UINT32)’ defined but not used
#  312 | static BOOL filter_forward_empty_offer(const char* sessionID, proxyDynChannelInterceptData* data,
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~
#  310|   }
#  311|   
#  312|-> static BOOL filter_forward_empty_offer(const char* sessionID, proxyDynChannelInterceptData* data,
#  313|                                          size_t startPosition, UINT32 channelId)
#  314|   {

Error: GCC_ANALYZER_WARNING (CWE-762): [#def750]
FreeRDP-3.12.0/server/proxy/pf_channel.c:89:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ret’ should have been deallocated with ‘free’ but was deallocated with ‘channelTracker_free’
FreeRDP-3.12.0/server/proxy/pf_channel.c:66:22: enter_function: entry to ‘channelTracker_new’
FreeRDP-3.12.0/server/proxy/pf_channel.c:69:36: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/server/proxy/pf_channel.c:70:12: branch_false: following ‘false’ branch (when ‘ret’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_channel.c:75:9: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_channel.c:78:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_channel.c:81:14: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_channel.c:81:14: call_function: calling ‘channelTracker_resetCurrentPacket’ from ‘channelTracker_new’
FreeRDP-3.12.0/server/proxy/pf_channel.c:81:14: return_function: returning to ‘channelTracker_new’ from ‘channelTracker_resetCurrentPacket’
FreeRDP-3.12.0/server/proxy/pf_channel.c:81:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/proxy/pf_channel.c:82:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_channel.c:89:9: danger: deallocated with ‘channelTracker_free’ here; allocation at [(2)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
#   87|   	WINPR_PRAGMA_DIAG_PUSH
#   88|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#   89|-> 	channelTracker_free(ret);
#   90|   	WINPR_PRAGMA_DIAG_POP
#   91|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def751]
FreeRDP-3.12.0/server/proxy/pf_channel.c:166:9: warning[-Wanalyzer-use-after-free]: use after ‘channelTracker_free’ of ‘t’
FreeRDP-3.12.0/server/proxy/pf_channel.c:66:22: enter_function: entry to ‘channelTracker_new’
FreeRDP-3.12.0/server/proxy/pf_channel.c:69:36: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_channel.c:70:12: branch_false: following ‘false’ branch (when ‘ret’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_channel.c:75:9: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_channel.c:78:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_channel.c:81:14: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_channel.c:81:14: call_function: calling ‘channelTracker_resetCurrentPacket’ from ‘channelTracker_new’
FreeRDP-3.12.0/server/proxy/pf_channel.c:81:14: return_function: returning to ‘channelTracker_new’ from ‘channelTracker_resetCurrentPacket’
FreeRDP-3.12.0/server/proxy/pf_channel.c:81:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/proxy/pf_channel.c:82:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_channel.c:89:9: release_memory: deallocated here
FreeRDP-3.12.0/server/proxy/pf_channel.c:89:9: call_function: calling ‘channelTracker_free’ from ‘channelTracker_new’
#  164|   		return;
#  165|   
#  166|-> 	Stream_Free(t->currentPacket, TRUE);
#  167|   	free(t);
#  168|   }

Error: COMPILER_WARNING (CWE-563): [#def752]
FreeRDP-3.12.0/server/proxy/pf_client.c:122:25: warning[-Wunused-but-set-variable]: variable ‘ps’ set but not used
#  122 |         pServerContext* ps = NULL;
#      |                         ^~
#  120|   {
#  121|   	rdpContext* context = (rdpContext*)pc;
#  122|-> 	pServerContext* ps = NULL;
#  123|   	const proxyConfig* config = NULL;
#  124|   

Error: COMPILER_WARNING (CWE-563): [#def753]
FreeRDP-3.12.0/server/proxy/pf_client.c: scope_hint: In function ‘pf_client_load_rdpsnd’
FreeRDP-3.12.0/server/proxy/pf_client.c:123:28: warning[-Wunused-but-set-variable]: variable ‘config’ set but not used
#  123 |         const proxyConfig* config = NULL;
#      |                            ^~~~~~
#  121|   	rdpContext* context = (rdpContext*)pc;
#  122|   	pServerContext* ps = NULL;
#  123|-> 	const proxyConfig* config = NULL;
#  124|   
#  125|   	WINPR_ASSERT(pc);

Error: COMPILER_WARNING (CWE-1164): [#def754]
FreeRDP-3.12.0/server/proxy/pf_client.c: scope_hint: At top level
FreeRDP-3.12.0/server/proxy/pf_client.c:196:13: warning[-Wunused-function]: ‘freerdp_client_load_static_channel_addin’ defined but not used
#  196 | static BOOL freerdp_client_load_static_channel_addin(rdpChannels* channels, rdpSettings* settings,
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  194|   }
#  195|   
#  196|-> static BOOL freerdp_client_load_static_channel_addin(rdpChannels* channels, rdpSettings* settings,
#  197|                                                        const char* name, void* data)
#  198|   {

Error: COMPILER_WARNING (CWE-563): [#def755]
FreeRDP-3.12.0/server/proxy/pf_client.c:574:22: warning[-Wunused-but-set-variable]: variable ‘settings’ set but not used
#  574 |         rdpSettings* settings = NULL;
#      |                      ^~~~~~~~
#  572|   {
#  573|   	rdpContext* context = NULL;
#  574|-> 	rdpSettings* settings = NULL;
#  575|   	rdpUpdate* update = NULL;
#  576|   	rdpContext* ps = NULL;

Error: COMPILER_WARNING (CWE-563): [#def756]
FreeRDP-3.12.0/server/proxy/pf_client.c: scope_hint: In function ‘pf_client_post_connect’
FreeRDP-3.12.0/server/proxy/pf_client.c:578:28: warning[-Wunused-but-set-variable]: variable ‘config’ set but not used
#  578 |         const proxyConfig* config = NULL;
#      |                            ^~~~~~
#  576|   	rdpContext* ps = NULL;
#  577|   	pClientContext* pc = NULL;
#  578|-> 	const proxyConfig* config = NULL;
#  579|   
#  580|   	WINPR_ASSERT(instance);

Error: COMPILER_WARNING (CWE-563): [#def757]
FreeRDP-3.12.0/server/proxy/pf_client.c: scope_hint: In function ‘pf_client_redirect’
FreeRDP-3.12.0/server/proxy/pf_client.c:663:20: warning[-Wunused-but-set-variable]: variable ‘pdata’ set but not used
#  663 |         proxyData* pdata = NULL;
#      |                    ^~~~~
#  661|   {
#  662|   	pClientContext* pc = NULL;
#  663|-> 	proxyData* pdata = NULL;
#  664|   
#  665|   	if (!instance)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def758]
FreeRDP-3.12.0/server/proxy/pf_client.c:960:17: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(hostname)’
FreeRDP-3.12.0/server/proxy/pf_client.c:949:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_client.c:951:9: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_client.c:959:12: branch_true: following ‘true’ branch (when ‘hostname’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_client.c:960:39: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_client.c:960:39: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_client.c:960:17: danger: ‘_strdup(hostname)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#  958|   
#  959|   	if (hostname)
#  960|-> 		pc->remote_hostname = _strdup(hostname);
#  961|   	pc->remote_port = port;
#  962|   	pc->remote_flags = flags;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def759]
FreeRDP-3.12.0/server/proxy/pf_config.c:847:9: warning[-Wanalyzer-use-after-free]: use after ‘pf_server_config_free’ of ‘config’
FreeRDP-3.12.0/server/proxy/pf_config.c:947:6: enter_function: entry to ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:949:28: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_config.c:954:12: branch_false: following ‘false’ branch (when ‘tmp’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_config.c:957:9: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:959:14: call_function: inlined call to ‘pf_config_copy_string’ from ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:961:54: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:961:14: call_function: inlined call to ‘pf_config_copy_string’ from ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:965:41: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:1001:9: release_memory: deallocated here
FreeRDP-3.12.0/server/proxy/pf_config.c:1001:9: call_function: calling ‘pf_server_config_free’ from ‘pf_config_clone’
#  845|   		return;
#  846|   
#  847|-> 	CommandLineParserFree(config->Passthrough);
#  848|   	CommandLineParserFree(config->Intercept);
#  849|   	CommandLineParserFree(config->RequiredPlugins);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def760]
FreeRDP-3.12.0/server/proxy/pf_config.c:1001:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/server/proxy/pf_config.c:947:6: enter_function: entry to ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:954:12: branch_false: following ‘false’ branch (when ‘tmp’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_config.c:957:9: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:959:14: call_function: inlined call to ‘pf_config_copy_string’ from ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:961:54: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:961:14: call_function: inlined call to ‘pf_config_copy_string’ from ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:964:14: call_function: inlined call to ‘pf_config_copy_string_list’ from ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:966:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:1001:9: danger: ‘<unknown>’ leaks here; was allocated at [(10)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/9)
#  999|   	WINPR_PRAGMA_DIAG_PUSH
# 1000|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1001|-> 	pf_server_config_free(tmp);
# 1002|   	WINPR_PRAGMA_DIAG_POP
# 1003|   	return FALSE;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def761]
FreeRDP-3.12.0/server/proxy/pf_config.c:1001:9: warning[-Wanalyzer-mismatching-deallocation]: ‘tmp’ should have been deallocated with ‘free’ but was deallocated with ‘pf_server_config_free’
FreeRDP-3.12.0/server/proxy/pf_config.c:947:6: enter_function: entry to ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:949:28: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/server/proxy/pf_config.c:954:12: branch_false: following ‘false’ branch (when ‘tmp’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_config.c:957:9: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:959:14: call_function: inlined call to ‘pf_config_copy_string’ from ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:961:54: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:961:14: call_function: inlined call to ‘pf_config_copy_string’ from ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:965:41: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:964:14: call_function: inlined call to ‘pf_config_copy_string_list’ from ‘pf_config_clone’
FreeRDP-3.12.0/server/proxy/pf_config.c:966:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_config.c:1001:9: danger: deallocated with ‘pf_server_config_free’ here; allocation at [(2)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
#  999|   	WINPR_PRAGMA_DIAG_PUSH
# 1000|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
# 1001|-> 	pf_server_config_free(tmp);
# 1002|   	WINPR_PRAGMA_DIAG_POP
# 1003|   	return FALSE;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def762]
FreeRDP-3.12.0/server/proxy/pf_context.c:118:9: warning[-Wanalyzer-use-after-free]: use after ‘StaticChannelContext_free’ of ‘ctx’
FreeRDP-3.12.0/server/proxy/pf_context.c:124:13: enter_function: entry to ‘HashStaticChannelContext_free’
FreeRDP-3.12.0/server/proxy/pf_context.c:127:9: release_memory: deallocated here
FreeRDP-3.12.0/server/proxy/pf_context.c:127:9: call_function: calling ‘StaticChannelContext_free’ from ‘HashStaticChannelContext_free’
#  116|   		return;
#  117|   
#  118|-> 	IFCALL(ctx->contextDtor, ctx->context);
#  119|   
#  120|   	free(ctx->channel_name);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def763]
FreeRDP-3.12.0/server/proxy/pf_context.c:211:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/server/proxy/pf_context.c:132:13: enter_function: entry to ‘client_to_proxy_context_new’
FreeRDP-3.12.0/server/proxy/pf_context.c:142:24: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_context.c:144:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/proxy/pf_context.c:145:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_context.c:184:9: call_function: calling ‘client_to_proxy_context_free’ from ‘client_to_proxy_context_new’
#  209|   	if (context->vcm && (context->vcm != INVALID_HANDLE_VALUE))
#  210|   		WTSCloseServer(context->vcm);
#  211|-> 	context->vcm = NULL;
#  212|   }
#  213|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def764]
FreeRDP-3.12.0/server/proxy/pf_context.c:362:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/server/proxy/pf_context.c:333:12: branch_false: following ‘false’ branch (when ‘pdata’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_context.c:336:36: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_context.c:336:36: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_context.c:336:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_context.c:339:41: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_context.c:339:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/proxy/pf_context.c:340:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_context.c:362:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/2)
#  360|   	WINPR_PRAGMA_DIAG_PUSH
#  361|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  362|-> 	proxy_data_free(pdata);
#  363|   	WINPR_PRAGMA_DIAG_POP
#  364|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def765]
FreeRDP-3.12.0/server/proxy/pf_context.c:362:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pdata’ should have been deallocated with ‘free’ but was deallocated with ‘proxy_data_free’
FreeRDP-3.12.0/server/proxy/pf_context.c:332:17: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/server/proxy/pf_context.c:333:12: branch_false: following ‘false’ branch (when ‘pdata’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_context.c:336:36: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_context.c:336:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/proxy/pf_context.c:337:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_context.c:362:9: danger: deallocated with ‘proxy_data_free’ here; allocation at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  360|   	WINPR_PRAGMA_DIAG_PUSH
#  361|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  362|-> 	proxy_data_free(pdata);
#  363|   	WINPR_PRAGMA_DIAG_POP
#  364|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def766]
FreeRDP-3.12.0/server/proxy/pf_context.c:390:13: warning[-Wanalyzer-use-after-free]: use after ‘proxy_data_free’ of ‘pdata’
FreeRDP-3.12.0/server/proxy/pf_context.c:326:12: enter_function: entry to ‘proxy_data_new’
FreeRDP-3.12.0/server/proxy/pf_context.c:332:17: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_context.c:333:12: branch_false: following ‘false’ branch (when ‘pdata’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_context.c:336:36: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_context.c:362:9: release_memory: deallocated here
FreeRDP-3.12.0/server/proxy/pf_context.c:362:9: call_function: calling ‘proxy_data_free’ from ‘proxy_data_new’
#  388|   		return;
#  389|   
#  390|-> 	if (pdata->abort_event)
#  391|   		(void)CloseHandle(pdata->abort_event);
#  392|   

Error: COMPILER_WARNING (CWE-563): [#def767]
FreeRDP-3.12.0/server/proxy/pf_server.c: scope_hint: In function ‘pf_server_receive_channel_data_hook’
FreeRDP-3.12.0/server/proxy/pf_server.c:409:28: warning[-Wunused-but-set-variable]: variable ‘config’ set but not used
#  409 |         const proxyConfig* config = NULL;
#      |                            ^~~~~~
#  407|   	pClientContext* pc = NULL;
#  408|   	proxyData* pdata = NULL;
#  409|-> 	const proxyConfig* config = NULL;
#  410|   	const pServerStaticChannelContext* channel = NULL;
#  411|   	UINT64 channelId64 = channelId;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def768]
FreeRDP-3.12.0/server/proxy/pf_server.c:492:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_key_new_from_pem(*server_25->config.PrivateKeyPEM)’
FreeRDP-3.12.0/server/proxy/pf_server.c:472:12: branch_false: following ‘false’ branch (when ‘ps’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_server.c:475:22: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:479:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_server.c:481:22: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:488:30: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_server.c:489:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_server.c:492:14: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:492:12: danger: ‘freerdp_key_new_from_pem(*server_25->config.PrivateKeyPEM)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#  490|   		return FALSE;
#  491|   
#  492|-> 	if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerRsaKey, key, 1))
#  493|   		return FALSE;
#  494|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def769]
FreeRDP-3.12.0/server/proxy/pf_server.c:499:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_pem(*server_25->config.CertificatePEM)’
FreeRDP-3.12.0/server/proxy/pf_server.c:472:12: branch_false: following ‘false’ branch (when ‘ps’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_server.c:475:22: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:479:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_server.c:481:22: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:489:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_server.c:492:14: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:492:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_server.c:495:65: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:495:32: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_server.c:496:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/proxy/pf_server.c:499:14: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:499:12: danger: ‘freerdp_certificate_new_from_pem(*server_25->config.CertificatePEM)’ leaks here; was allocated at [(9)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/8)
#  497|   		return FALSE;
#  498|   
#  499|-> 	if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerCertificate, cert, 1))
#  500|   		return FALSE;
#  501|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def770]
FreeRDP-3.12.0/server/proxy/pf_server.c:982:9: warning[-Wanalyzer-mismatching-deallocation]: ‘server’ should have been deallocated with ‘free’ but was deallocated with ‘pf_server_free’
FreeRDP-3.12.0/server/proxy/pf_server.c:935:18: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/server/proxy/pf_server.c:936:12: branch_false: following ‘false’ branch (when ‘server’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_server.c:939:14: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:939:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/proxy/pf_server.c:940:17: branch_true: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:982:9: danger: deallocated with ‘pf_server_free’ here; allocation at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  980|   	WINPR_PRAGMA_DIAG_PUSH
#  981|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  982|-> 	pf_server_free(server);
#  983|   	WINPR_PRAGMA_DIAG_POP
#  984|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def771]
FreeRDP-3.12.0/server/proxy/pf_server.c:1049:15: warning[-Wanalyzer-use-after-free]: use after ‘pf_server_free’ of ‘server’
FreeRDP-3.12.0/server/proxy/pf_server.c:928:14: enter_function: entry to ‘pf_server_new’
FreeRDP-3.12.0/server/proxy/pf_server.c:935:18: acquire_memory: allocated here
FreeRDP-3.12.0/server/proxy/pf_server.c:936:12: branch_false: following ‘false’ branch (when ‘server’ is non-NULL)...
FreeRDP-3.12.0/server/proxy/pf_server.c:939:14: branch_false: ...to here
FreeRDP-3.12.0/server/proxy/pf_server.c:982:9: release_memory: deallocated here
FreeRDP-3.12.0/server/proxy/pf_server.c:982:9: call_function: calling ‘pf_server_free’ from ‘pf_server_new’
# 1047|   
# 1048|   	/* signal main thread to stop and wait for the thread to exit */
# 1049|-> 	(void)SetEvent(server->stopEvent);
# 1050|   }
# 1051|   

Error: COMPILER_WARNING (CWE-1164): [#def772]
FreeRDP-3.12.0/server/shadow/X11/x11_shadow.c:592:13: warning[-Wunused-function]: ‘x11_shadow_validate_region’ defined but not used
#  592 | static void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int width,
#      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~
#  590|   }
#  591|   
#  592|-> static void x11_shadow_validate_region(x11ShadowSubsystem* subsystem, int x, int y, int width,
#  593|                                          int height)
#  594|   {

Error: COMPILER_WARNING (CWE-1164): [#def773]
FreeRDP-3.12.0/server/shadow/X11/x11_shadow.c:612:12: warning[-Wunused-function]: ‘x11_shadow_blend_cursor’ defined but not used
#  612 | static int x11_shadow_blend_cursor(x11ShadowSubsystem* subsystem)
#      |            ^~~~~~~~~~~~~~~~~~~~~~~
#  610|   }
#  611|   
#  612|-> static int x11_shadow_blend_cursor(x11ShadowSubsystem* subsystem)
#  613|   {
#  614|   	UINT32 nXSrc = 0;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def774]
FreeRDP-3.12.0/server/shadow/shadow_capture.c:326:17: warning[-Wanalyzer-mismatching-deallocation]: ‘capture’ should have been deallocated with ‘free’ but was deallocated with ‘shadow_capture_free’
FreeRDP-3.12.0/server/shadow/shadow_capture.c:315:56: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/server/shadow/shadow_capture.c:317:12: branch_false: following ‘false’ branch (when ‘capture’ is non-NULL)...
FreeRDP-3.12.0/server/shadow/shadow_capture.c:320:9: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_capture.c:322:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/shadow/shadow_capture.c:326:17: branch_true: ...to here
FreeRDP-3.12.0/server/shadow/shadow_capture.c:326:17: danger: deallocated with ‘shadow_capture_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  324|   		WINPR_PRAGMA_DIAG_PUSH
#  325|   		WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  326|-> 		shadow_capture_free(capture);
#  327|   		WINPR_PRAGMA_DIAG_POP
#  328|   		return NULL;

Error: COMPILER_WARNING (CWE-563): [#def775]
FreeRDP-3.12.0/server/shadow/shadow_client.c: scope_hint: In function ‘shadow_client_activate’
FreeRDP-3.12.0/server/shadow/shadow_client.c:679:22: warning[-Wunused-but-set-variable]: variable ‘settings’ set but not used
#  679 |         rdpSettings* settings = NULL;
#      |                      ^~~~~~~~
#  677|   static BOOL shadow_client_activate(freerdp_peer* peer)
#  678|   {
#  679|-> 	rdpSettings* settings = NULL;
#  680|   	rdpShadowClient* client = NULL;
#  681|   

Error: COMPILER_WARNING (CWE-563): [#def776]
FreeRDP-3.12.0/server/shadow/shadow_client.c: scope_hint: In function ‘shadow_client_send_surface_gfx’
FreeRDP-3.12.0/server/shadow/shadow_client.c:1376:22: warning[-Wunused-but-set-variable]: variable ‘rc’ set but not used
# 1376 |                 BOOL rc = 0;
#      |                      ^~
# 1374|   	else if (freerdp_settings_get_bool(settings, FreeRDP_GfxPlanar))
# 1375|   	{
# 1376|-> 		BOOL rc = 0;
# 1377|   		const UINT32 w = cmd.right - cmd.left;
# 1378|   		const UINT32 h = cmd.bottom - cmd.top;

Error: COMPILER_WARNING (CWE-563): [#def777]
FreeRDP-3.12.0/server/shadow/shadow_client.c:1408:22: warning[-Wunused-but-set-variable]: variable ‘rc’ set but not used
# 1408 |                 BOOL rc = 0;
#      |                      ^~
# 1406|   	else
# 1407|   	{
# 1408|-> 		BOOL rc = 0;
# 1409|   		const UINT32 w = cmd.right - cmd.left;
# 1410|   		const UINT32 h = cmd.bottom - cmd.top;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def778]
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:114:13: warning[-Wanalyzer-use-after-free]: use after ‘shadow_encoder_free’ of ‘encoder’
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:491:19: enter_function: entry to ‘shadow_encoder_new’
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:495:38: acquire_memory: allocated here
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:497:12: branch_false: following ‘false’ branch (when ‘encoder’ is non-NULL)...
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:500:9: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:505:13: call_function: calling ‘shadow_encoder_init’ from ‘shadow_encoder_new’
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:505:13: return_function: returning to ‘shadow_encoder_new’ from ‘shadow_encoder_init’
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:505:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:507:17: branch_true: ...to here
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:507:17: release_memory: deallocated here
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:507:17: call_function: calling ‘shadow_encoder_free’ from ‘shadow_encoder_new’
#  112|   static int shadow_encoder_uninit_grid(rdpShadowEncoder* encoder)
#  113|   {
#  114|-> 	if (encoder->gridBuffer)
#  115|   	{
#  116|   		free(encoder->gridBuffer);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def779]
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:507:17: warning[-Wanalyzer-mismatching-deallocation]: ‘encoder’ should have been deallocated with ‘free’ but was deallocated with ‘shadow_encoder_free’
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:491:19: enter_function: entry to ‘shadow_encoder_new’
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:495:38: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:497:12: branch_false: following ‘false’ branch (when ‘encoder’ is non-NULL)...
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:500:9: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:505:13: call_function: calling ‘shadow_encoder_init’ from ‘shadow_encoder_new’
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:505:13: return_function: returning to ‘shadow_encoder_new’ from ‘shadow_encoder_init’
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:505:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:507:17: branch_true: ...to here
FreeRDP-3.12.0/server/shadow/shadow_encoder.c:507:17: danger: deallocated with ‘shadow_encoder_free’ here; allocation at [(2)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
#  505|   	if (shadow_encoder_init(encoder) < 0)
#  506|   	{
#  507|-> 		shadow_encoder_free(encoder);
#  508|   		return NULL;
#  509|   	}

Error: GCC_ANALYZER_WARNING (CWE-476): [#def780]
FreeRDP-3.12.0/server/shadow/shadow_encomsp.c:109:9: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘encomsp_server_context_new(*client.vcm)’
FreeRDP-3.12.0/server/shadow/shadow_encomsp.c:107:37: acquire_memory: this call could return NULL
FreeRDP-3.12.0/server/shadow/shadow_encomsp.c:109:9: danger: ‘encomsp_server_context_new(*client.vcm)’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#  107|   	encomsp = client->encomsp = encomsp_server_context_new(client->vcm);
#  108|   
#  109|-> 	encomsp->rdpcontext = &client->context;
#  110|   
#  111|   	encomsp->custom = (void*)client;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def781]
FreeRDP-3.12.0/server/shadow/shadow_remdesk.c:32:9: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘remdesk_server_context_new(*client.vcm)’
FreeRDP-3.12.0/server/shadow/shadow_remdesk.c:31:37: acquire_memory: this call could return NULL
FreeRDP-3.12.0/server/shadow/shadow_remdesk.c:32:9: danger: ‘remdesk_server_context_new(*client.vcm)’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#   30|   
#   31|   	remdesk = client->remdesk = remdesk_server_context_new(client->vcm);
#   32|-> 	remdesk->rdpcontext = &client->context;
#   33|   
#   34|   	remdesk->custom = (void*)client;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def782]
FreeRDP-3.12.0/server/shadow/shadow_screen.c:90:9: warning[-Wanalyzer-mismatching-deallocation]: ‘screen’ should have been deallocated with ‘free’ but was deallocated with ‘shadow_screen_free’
FreeRDP-3.12.0/server/shadow/shadow_screen.c:33:53: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/server/shadow/shadow_screen.c:35:12: branch_false: following ‘false’ branch (when ‘screen’ is non-NULL)...
FreeRDP-3.12.0/server/shadow/shadow_screen.c:38:9: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_screen.c:41:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/server/shadow/shadow_screen.c:42:17: branch_true: ...to here
FreeRDP-3.12.0/server/shadow/shadow_screen.c:90:9: danger: deallocated with ‘shadow_screen_free’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#   88|   	WINPR_PRAGMA_DIAG_PUSH
#   89|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#   90|-> 	shadow_screen_free(screen);
#   91|   	WINPR_PRAGMA_DIAG_POP
#   92|   

Error: GCC_ANALYZER_WARNING (CWE-416): [#def783]
FreeRDP-3.12.0/server/shadow/shadow_screen.c:105:13: warning[-Wanalyzer-use-after-free]: use after ‘shadow_screen_free’ of ‘screen’
FreeRDP-3.12.0/server/shadow/shadow_screen.c:28:18: enter_function: entry to ‘shadow_screen_new’
FreeRDP-3.12.0/server/shadow/shadow_screen.c:33:53: acquire_memory: allocated here
FreeRDP-3.12.0/server/shadow/shadow_screen.c:35:12: branch_false: following ‘false’ branch (when ‘screen’ is non-NULL)...
FreeRDP-3.12.0/server/shadow/shadow_screen.c:38:9: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_screen.c:90:9: release_memory: deallocated here
FreeRDP-3.12.0/server/shadow/shadow_screen.c:90:9: call_function: calling ‘shadow_screen_free’ from ‘shadow_screen_new’
#  103|   	region16_uninit(&(screen->invalidRegion));
#  104|   
#  105|-> 	if (screen->primary)
#  106|   	{
#  107|   		shadow_surface_free(screen->primary);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def784]
FreeRDP-3.12.0/server/shadow/shadow_server.c:880:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_key_new_from_file(*server.PrivateKeyFile)’
FreeRDP-3.12.0/server/shadow/shadow_server.c:849:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:852:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:864:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:877:30: acquire_memory: allocated here
FreeRDP-3.12.0/server/shadow/shadow_server.c:878:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:880:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:880:12: danger: ‘freerdp_key_new_from_file(*server.PrivateKeyFile)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#  878|   	if (!key)
#  879|   		goto out_fail;
#  880|-> 	if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerRsaKey, key, 1))
#  881|   		goto out_fail;
#  882|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def785]
FreeRDP-3.12.0/server/shadow/shadow_server.c:887:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_file(*server.CertificateFile)’
FreeRDP-3.12.0/server/shadow/shadow_server.c:849:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:852:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:864:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:878:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:880:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:880:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:883:66: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:883:32: acquire_memory: allocated here
FreeRDP-3.12.0/server/shadow/shadow_server.c:884:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:887:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:887:12: danger: ‘freerdp_certificate_new_from_file(*server.CertificateFile)’ leaks here; was allocated at [(9)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/8)
#  885|   		goto out_fail;
#  886|   
#  887|-> 	if (!freerdp_settings_set_pointer_len(settings, FreeRDP_RdpServerCertificate, cert, 1))
#  888|   		goto out_fail;
#  889|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def786]
FreeRDP-3.12.0/server/shadow/shadow_server.c:890:12: warning[-Wanalyzer-malloc-leak]: leak of ‘freerdp_certificate_new_from_file(*server.CertificateFile)’
FreeRDP-3.12.0/server/shadow/shadow_server.c:849:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:852:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:864:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:878:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:880:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:880:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:883:66: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:883:32: acquire_memory: allocated here
FreeRDP-3.12.0/server/shadow/shadow_server.c:884:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:887:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:887:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/server/shadow/shadow_server.c:890:14: branch_false: ...to here
FreeRDP-3.12.0/server/shadow/shadow_server.c:890:12: danger: ‘freerdp_certificate_new_from_file(*server.CertificateFile)’ leaks here; was allocated at [(9)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/8)
#  888|   		goto out_fail;
#  889|   
#  890|-> 	if (!freerdp_certificate_is_rdp_security_compatible(cert))
#  891|   	{
#  892|   		if (!freerdp_settings_set_bool(settings, FreeRDP_UseRdpSecurityLayer, FALSE))

Error: COMPILER_WARNING (CWE-252): [#def787]
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:36: included_from: Included from here.
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c: scope_hint: In function ‘winpr_backtrace_symbols_fd’
FreeRDP-3.12.0/winpr/include/winpr/crt.h:42:16: warning[-Wunused-result]: ignoring return value of ‘write’ declared with attribute ‘warn_unused_result’
#   42 | #define _write write
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:195:31: note: in expansion of macro ‘_write’
#  195 |                         (void)_write(fd, lines[i], (unsigned)strnlen(lines[i], UINT32_MAX));
#      |                               ^~~~~~
#   40|   
#   41|   #ifndef _write
#   42|-> #define _write write
#   43|   #endif
#   44|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def788]
FreeRDP-3.12.0/winpr/include/winpr/stream.h:148:54: warning[-Wanalyzer-malloc-leak]: leak of ‘update_read_cache_brush_order(update,  s, (int)v)’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4438:6: enter_function: entry to ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4444:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4447:9: call_function: inlined call to ‘stream_read_u8’ from ‘update_recv_order’
FreeRDP-3.12.0/libfreerdp/core/orders.c:4449:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4451:17: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: branch_true: ...to here
FreeRDP-3.12.0/libfreerdp/core/orders.c:4452:22: call_function: calling ‘update_recv_secondary_order’ from ‘update_recv_order’
#  146|   		WINPR_ASSERT(Stream_GetRemainingLength(_s) >= sizeof(UINT8));
#  147|   
#  148|-> 		const UINT8 v = winpr_Data_Get_UINT8(_s->pointer);
#  149|   		if (seek)
#  150|   			Stream_Seek(_s, sizeof(UINT8));

Error: GCC_ANALYZER_WARNING (CWE-476): [#def789]
FreeRDP-3.12.0/winpr/include/winpr/stream.h:216:56: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘s’
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:1776:13: enter_function: entry to ‘rdg_process_control_packet’
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:1783:12: branch_false: following ‘false’ branch (when ‘packetLength > 7’)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:1789:12: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:1789:12: branch_false: following ‘false’ branch (when ‘payloadSize == 0’)...
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:1830:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/core/gateway/rdg.c:1834:34: call_function: calling ‘rdg_process_close_packet’ from ‘rdg_process_control_packet’
#  214|   		WINPR_ASSERT(Stream_GetRemainingLength(_s) >= typesize);
#  215|   
#  216|-> 		const UINT32 v = winpr_Data_Get_UINT32(_s->pointer);
#  217|   		if (seek)
#  218|   			Stream_Seek(_s, typesize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def790]
FreeRDP-3.12.0/winpr/include/winpr/stream.h:845:40: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 5)’
FreeRDP-3.12.0/channels/audin/client/audin_main.c:296:13: enter_function: entry to ‘audin_send_format_change_pdu’
FreeRDP-3.12.0/channels/audin/client/audin_main.c:302:24: acquire_memory: allocated here
FreeRDP-3.12.0/channels/audin/client/audin_main.c:304:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/channels/audin/client/audin_main.c:310:9: call_function: inlined call to ‘Stream_Write_UINT8_unchecked’ from ‘audin_send_format_change_pdu’
FreeRDP-3.12.0/channels/audin/client/audin_main.c:312:16: call_function: calling ‘audin_channel_write_and_free’ from ‘audin_send_format_change_pdu’
#  843|   		WINPR_ASSERT(Stream_GetRemainingCapacity(_s) >= 1);
#  844|   
#  845|-> 		winpr_Data_Write_UINT8(_s->pointer, _v);
#  846|   		_s->pointer += 1;
#  847|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def791]
FreeRDP-3.12.0/winpr/include/winpr/stream.h:846:17: warning[-Wanalyzer-malloc-leak]: leak of ‘websocket_context_packet_new(*sPacket.length,  opcode, & maskingKey)’
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:354:5: enter_function: entry to ‘websocket_context_read’
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:443:42: call_function: calling ‘websocket_handle_payload’ from ‘websocket_context_read’
#  844|   
#  845|   		winpr_Data_Write_UINT8(_s->pointer, _v);
#  846|-> 		_s->pointer += 1;
#  847|   	}
#  848|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def792]
FreeRDP-3.12.0/winpr/include/winpr/stream.h:897:41: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘Stream_New(0, destSize + 4)’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1459:6: enter_function: entry to ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1489:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1498:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1501:27: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1502:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1507:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1508:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1513:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1514:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1516:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1517:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1517:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1517:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1522:20: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1522:20: call_function: calling ‘vgids_ef_new’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1522:20: return_function: returning to ‘vgids_init’ from ‘vgids_ef_new’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1523:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1527:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1527:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1527:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1531:46: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1532:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1535:9: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1536:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1536:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1536:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1540:14: call_function: inlined call to ‘vgids_ef_write_do’ from ‘vgids_init’
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1540:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1545:40: branch_false: ...to here
FreeRDP-3.12.0/libfreerdp/emu/scard/smartcard_virtual_gids.c:1545:14: call_function: calling ‘vgids_prepare_certificate’ from ‘vgids_init’
#  895|   		WINPR_ASSERT(Stream_GetRemainingCapacity(_s) >= 2);
#  896|   
#  897|-> 		winpr_Data_Write_UINT16(_s->pointer, _v);
#  898|   		_s->pointer += 2;
#  899|   	}

Error: GCC_ANALYZER_WARNING (CWE-476): [#def793]
FreeRDP-3.12.0/winpr/include/winpr/stream.h:1289:24: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘sPacket’
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:354:5: enter_function: entry to ‘websocket_context_read’
FreeRDP-3.12.0/libfreerdp/core/gateway/websocket.c:443:42: call_function: calling ‘websocket_handle_payload’ from ‘websocket_context_read’
# 1287|   	{
# 1288|   		WINPR_ASSERT(_s);
# 1289|-> 		return _s->length;
# 1290|   	}
# 1291|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def794]
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:524:30: warning[-Wanalyzer-malloc-leak]: leak of ‘calloc(1, SrcSize + 1)’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:505:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:507:48: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:513:31: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:514:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:516:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:518:20: branch_true: following ‘true’ branch (when ‘SrcSize > 2’)...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:520:28: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:520:28: branch_false: following ‘false’ branch (when ‘SrcSize <= 2147483647’)...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:524:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:528:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic.c:524:30: danger: ‘calloc(1, SrcSize + 1)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#  522|   
#  523|   			/* Check the BOM (Byte Order Mark) */
#  524|-> 			if ((pSrcData.cpb[0] == 0xFE) && (pSrcData.cpb[1] == 0xFF))
#  525|   				ByteSwapUnicode(pSrcData.pv, (SrcSize / 2));
#  526|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def795]
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:84:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileW(local_name, & fd)’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:645:14: enter_function: entry to ‘convert_mate_copied_files_to_filedescriptors’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:649:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: call_function: inlined call to ‘process_mate_copied_files’ from ‘convert_mate_copied_files_to_filedescriptors’
#   82|   
#   83|   	hFind = FindFirstFileW(local_name, &fd);
#   84|-> 	if (INVALID_HANDLE_VALUE == hFind)
#   85|   	{
#   86|   		WLog_ERR(TAG, "FindFirstFile failed (%" PRIu32 ")", GetLastError());

Error: GCC_ANALYZER_WARNING (CWE-401): [#def796]
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:125:12: warning[-Wanalyzer-malloc-leak]: leak of ‘make_synthetic_file(local_name,  remote_name)’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:645:14: enter_function: entry to ‘convert_mate_copied_files_to_filedescriptors’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:649:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: call_function: inlined call to ‘process_mate_copied_files’ from ‘convert_mate_copied_files_to_filedescriptors’
#  123|   void free_synthetic_file(struct synthetic_file* file)
#  124|   {
#  125|-> 	if (!file)
#  126|   		return;
#  127|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def797]
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:249:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileW(namebuf, & FindData)’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:645:14: enter_function: entry to ‘convert_mate_copied_files_to_filedescriptors’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:649:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: call_function: inlined call to ‘process_mate_copied_files’ from ‘convert_mate_copied_files_to_filedescriptors’
#  247|   	WIN32_FIND_DATAW FindData = { 0 };
#  248|   	HANDLE hFind = FindFirstFileW(namebuf, &FindData);
#  249|-> 	if (INVALID_HANDLE_VALUE == hFind)
#  250|   	{
#  251|   		WLog_ERR(TAG, "FindFirstFile failed (%" PRIu32 ")", GetLastError());

Error: GCC_ANALYZER_WARNING (CWE-401): [#def798]
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:320:12: warning[-Wanalyzer-malloc-leak]: leak of ‘make_synthetic_file(local_name,  remote_name)’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:645:14: enter_function: entry to ‘convert_mate_copied_files_to_filedescriptors’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:649:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: call_function: inlined call to ‘process_mate_copied_files’ from ‘convert_mate_copied_files_to_filedescriptors’
#  318|   	file = make_synthetic_file(local_name, remote_name);
#  319|   
#  320|-> 	if (!file)
#  321|   		return FALSE;
#  322|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def799]
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:329:13: warning[-Wanalyzer-malloc-leak]: leak of ‘make_synthetic_file(local_name,  remote_name)’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:645:14: enter_function: entry to ‘convert_mate_copied_files_to_filedescriptors’
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:649:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:652:14: call_function: inlined call to ‘process_mate_copied_files’ from ‘convert_mate_copied_files_to_filedescriptors’
#  327|   	}
#  328|   
#  329|-> 	if (file->dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
#  330|   	{
#  331|   		/*

Error: COMPILER_WARNING (CWE-1164): [#def800]
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:623:14: warning[-Wunused-function]: ‘convert_nautilus_clipboard_to_filedescriptors’ defined but not used
#  623 | static void* convert_nautilus_clipboard_to_filedescriptors(wClipboard* clipboard, UINT32 formatId,
#      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  621|   }
#  622|   
#  623|-> static void* convert_nautilus_clipboard_to_filedescriptors(wClipboard* clipboard, UINT32 formatId,
#  624|                                                              const void* data, UINT32* pSize)
#  625|   {

Error: COMPILER_WARNING (CWE-1164): [#def801]
FreeRDP-3.12.0/winpr/libwinpr/clipboard/synthetic_file.c:892:14: warning[-Wunused-function]: ‘convert_filedescriptors_to_nautilus_clipboard’ defined but not used
#  892 | static void* convert_filedescriptors_to_nautilus_clipboard(wClipboard* clipboard, UINT32 formatId,
#      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  890|   
#  891|   /* Prepend header of nautilus based filemanager's format to file list*/
#  892|-> static void* convert_filedescriptors_to_nautilus_clipboard(wClipboard* clipboard, UINT32 formatId,
#  893|                                                              const void* data, UINT32* pSize)
#  894|   {

Error: GCC_ANALYZER_WARNING (CWE-401): [#def802]
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1052:33: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(lpDeviceName)’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1022:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1025:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1027:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1033:28: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1033:28: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1035:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1041:28: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1043:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1050:16: branch_true: following ‘true’ branch (when ‘i != 128’)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1052:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1052:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1054:37: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1054:28: branch_false: following ‘false’ branch (when the strings are non-equal)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1050:37: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1052:33: danger: ‘_strdup(lpDeviceName)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
# 1050|   	for (; i < COMM_DEVICE_MAX; i++)
# 1051|   	{
# 1052|-> 		if (sCommDevices[i] != NULL)
# 1053|   		{
# 1054|   			if (_tcscmp(sCommDevices[i]->name, storedDeviceName) == 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def803]
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1052:33: warning[-Wanalyzer-malloc-leak]: leak of ‘_strdup(lpTargetPath)’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1022:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1025:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1027:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1033:28: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1035:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1041:28: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1041:28: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1043:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1050:16: branch_true: following ‘true’ branch (when ‘i != 128’)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1052:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1052:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1054:37: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1054:28: branch_false: following ‘false’ branch (when the strings are non-equal)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1050:37: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1052:33: danger: ‘_strdup(lpTargetPath)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/6)
# 1050|   	for (; i < COMM_DEVICE_MAX; i++)
# 1051|   	{
# 1052|-> 		if (sCommDevices[i] != NULL)
# 1053|   		{
# 1054|   			if (_tcscmp(sCommDevices[i]->name, storedDeviceName) == 0)

Error: GCC_ANALYZER_WARNING (CWE-775): [#def804]
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1438:60: warning[-Wanalyzer-fd-leak]: leak of file descriptor
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1248:8: enter_function: entry to ‘CommCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1257:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1260:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1266:12: branch_false: following ‘false’ branch (when ‘dwShareMode == 0’)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1275:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1281:12: branch_false: following ‘false’ branch (when ‘dwCreationDisposition == 3’)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1287:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1287:13: call_function: calling ‘QueryCommDevice’ from ‘CommCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1287:13: return_function: returning to ‘CommCreateFileA’ from ‘QueryCommDevice’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1287:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1293:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1293:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1300:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1300:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1307:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1313:12: branch_false: following ‘false’ branch (when ‘hTemplateFile’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1319:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1321:12: branch_false: following ‘false’ branch (when ‘pComm’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1327:9: call_function: inlined call to ‘WINPR_HANDLE_SET_TYPE_AND_MODE’ from ‘CommCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1330:21: acquire_resource: opened here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1332:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1339:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1341:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1343:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1438:60: danger: leaks here; was opened at [(37)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/36)
# 1436|   error_handle:
# 1437|   	WINPR_PRAGMA_DIAG_PUSH
# 1438|-> 	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC(void) CloseHandle(pComm);
# 1439|   	WINPR_PRAGMA_DIAG_POP
# 1440|   	return INVALID_HANDLE_VALUE;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def805]
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1438:60: warning[-Wanalyzer-mismatching-deallocation]: ‘pComm’ should have been deallocated with ‘free’ but was deallocated with ‘CloseHandle’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1248:8: enter_function: entry to ‘CommCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1257:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1260:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1266:12: branch_false: following ‘false’ branch (when ‘dwShareMode == 0’)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1275:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1281:12: branch_false: following ‘false’ branch (when ‘dwCreationDisposition == 3’)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1287:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1287:13: call_function: calling ‘QueryCommDevice’ from ‘CommCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1287:13: return_function: returning to ‘CommCreateFileA’ from ‘QueryCommDevice’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1287:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1293:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1293:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1300:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1300:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1307:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1313:12: branch_false: following ‘false’ branch (when ‘hTemplateFile’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1319:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1319:30: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1321:12: branch_false: following ‘false’ branch (when ‘pComm’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1327:9: call_function: inlined call to ‘WINPR_HANDLE_SET_TYPE_AND_MODE’ from ‘CommCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1332:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1339:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1341:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1349:32: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1353:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1360:35: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1363:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1371:33: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1375:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1382:35: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1409:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1411:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/comm/comm.c:1438:60: danger: deallocated with ‘CloseHandle’ here; allocation at [(34)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/33) expects deallocation with ‘free’
# 1436|   error_handle:
# 1437|   	WINPR_PRAGMA_DIAG_PUSH
# 1438|-> 	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC(void) CloseHandle(pComm);
# 1439|   	WINPR_PRAGMA_DIAG_POP
# 1440|   	return INVALID_HANDLE_VALUE;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def806]
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:80:13: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_malloc(num * size,  alignment,  offset)’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:173:7: enter_function: entry to ‘winpr_aligned_offset_recalloc’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:180:12: branch_true: following ‘true’ branch (when ‘memblock’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:182:59: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:182:31: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:182:31: call_function: calling ‘winpr_aligned_offset_malloc’ from ‘winpr_aligned_offset_recalloc’
#   78|   
#   79|   	/* alignment must be a power of 2 */
#   80|-> 	if (alignment % 2 == 1)
#   81|   		return NULL;
#   82|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def807]
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:80:13: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_malloc(size,  alignment,  offset)’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:129:7: enter_function: entry to ‘winpr_aligned_offset_realloc’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:136:12: branch_true: following ‘true’ branch (when ‘memblock’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:137:24: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:137:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:137:24: call_function: calling ‘winpr_aligned_offset_malloc’ from ‘winpr_aligned_offset_realloc’
#   78|   
#   79|   	/* alignment must be a power of 2 */
#   80|-> 	if (alignment % 2 == 1)
#   81|   		return NULL;
#   82|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def808]
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:80:13: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_realloc(memblock,  size,  alignment, 0)’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:60:7: enter_function: entry to ‘winpr_aligned_realloc’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:62:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:62:16: call_function: calling ‘winpr_aligned_offset_realloc’ from ‘winpr_aligned_realloc’
#   78|   
#   79|   	/* alignment must be a power of 2 */
#   80|-> 	if (alignment % 2 == 1)
#   81|   		return NULL;
#   82|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def809]
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:141:13: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_realloc(memblock,  size,  alignment, 0)’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:60:7: enter_function: entry to ‘winpr_aligned_realloc’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:62:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:62:16: call_function: calling ‘winpr_aligned_offset_realloc’ from ‘winpr_aligned_realloc’
#  139|   	pMem = WINPR_ALIGNED_MEM_STRUCT_FROM_PTR(memblock);
#  140|   
#  141|-> 	if (pMem->sig != WINPR_ALIGNED_MEM_SIGNATURE)
#  142|   	{
#  143|   		WLog_ERR(TAG,

Error: GCC_ANALYZER_WARNING (CWE-401): [#def810]
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:182:59: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_recalloc(memblock,  num,  size,  alignment, 0)’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:65:7: enter_function: entry to ‘winpr_aligned_recalloc’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:67:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:67:16: call_function: calling ‘winpr_aligned_offset_recalloc’ from ‘winpr_aligned_recalloc’
#  180|   	if (!memblock)
#  181|   	{
#  182|-> 		newMemblock = winpr_aligned_offset_malloc(size * num, alignment, offset);
#  183|   
#  184|   		if (newMemblock)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def811]
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:182:59: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_recalloc(0, count,  size,  alignment)’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:55:7: enter_function: entry to ‘winpr_aligned_calloc’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:57:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:57:16: call_function: calling ‘winpr_aligned_recalloc’ from ‘winpr_aligned_calloc’
#  180|   	if (!memblock)
#  181|   	{
#  182|-> 		newMemblock = winpr_aligned_offset_malloc(size * num, alignment, offset);
#  183|   
#  184|   		if (newMemblock)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def812]
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:195:13: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_recalloc(memblock,  num,  size,  alignment, 0)’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:65:7: enter_function: entry to ‘winpr_aligned_recalloc’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:67:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:67:16: call_function: calling ‘winpr_aligned_offset_recalloc’ from ‘winpr_aligned_recalloc’
#  193|   	pMem = WINPR_ALIGNED_MEM_STRUCT_FROM_PTR(memblock);
#  194|   
#  195|-> 	if (pMem->sig != WINPR_ALIGNED_MEM_SIGNATURE)
#  196|   	{
#  197|   		WLog_ERR(TAG,

Error: GCC_ANALYZER_WARNING (CWE-416): [#def813]
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:252:13: warning[-Wanalyzer-use-after-free]: use after ‘winpr_aligned_free’ of ‘memblock’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:129:7: enter_function: entry to ‘winpr_aligned_offset_realloc’
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:136:12: branch_false: following ‘false’ branch (when ‘memblock’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:141:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:141:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:148:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:148:12: branch_true: following ‘true’ branch (when ‘size == 0’)...
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:150:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:150:17: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/alignment.c:150:17: call_function: calling ‘winpr_aligned_free’ from ‘winpr_aligned_offset_realloc’
#  250|   	pMem = WINPR_ALIGNED_MEM_STRUCT_FROM_PTR(memblock);
#  251|   
#  252|-> 	if (pMem->sig != WINPR_ALIGNED_MEM_SIGNATURE)
#  253|   	{
#  254|   		WLog_ERR(TAG, "_aligned_free: memory block was not allocated by _aligned_malloc!");

Error: GCC_ANALYZER_WARNING (CWE-401): [#def814]
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:14: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_malloc(100, 16)’
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:22:15: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:24:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:32:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:14: danger: ‘winpr_aligned_malloc(100, 16)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#   28|   	}
#   29|   
#   30|-> 	if (((size_t)ptr % alignment) != 0)
#   31|   	{
#   32|   		printf("This pointer, %p, is not aligned on %" PRIuz "\n", ptr, alignment);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def815]
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:40:14: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_realloc(winpr_aligned_malloc(100, 16), 200, 16)’
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:24:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:38:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:38:15: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:40:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:42:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:40:14: danger: ‘winpr_aligned_realloc(winpr_aligned_malloc(100, 16), 200, 16)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/4)
#   38|   	ptr = winpr_aligned_realloc(ptr, 200, alignment);
#   39|   
#   40|-> 	if (((size_t)ptr % alignment) != 0)
#   41|   	{
#   42|   		printf("This pointer, %p, is not aligned on %" PRIuz "\n", ptr, alignment);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def816]
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:58:15: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_malloc(200, 16, 8)’
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:24:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:38:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:40:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:46:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:50:15: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:52:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:58:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:58:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:60:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:58:15: danger: ‘winpr_aligned_offset_malloc(200, 16, 8)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/6)
#   56|   	}
#   57|   
#   58|-> 	if (((((size_t)ptr) + offset) % alignment) != 0)
#   59|   	{
#   60|   		printf("This pointer, %p, does not satisfy offset %" PRIuz " and alignment %" PRIuz "\n",

Error: GCC_ANALYZER_WARNING (CWE-401): [#def817]
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:75:15: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_offset_realloc(winpr_aligned_offset_malloc(200, 16, 8), 200, 16, 8)’
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:24:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:30:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:38:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:40:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:46:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:52:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:58:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:58:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:67:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:67:15: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:69:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:75:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:75:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:77:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestAlignment.c:75:15: danger: ‘winpr_aligned_offset_realloc(winpr_aligned_offset_malloc(200, 16, 8), 200, 16, 8)’ leaks here; was allocated at [(11)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/10)
#   73|   	}
#   74|   
#   75|-> 	if (((((size_t)ptr) + offset) % alignment) != 0)
#   76|   	{
#   77|   		printf("This pointer, %p, does not satisfy offset %" PRIuz " and alignment %" PRIuz "\n",

Error: GCC_ANALYZER_WARNING (CWE-131): [#def818]
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:87:39: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:1160:5: enter_function: entry to ‘TestUnicodeConversion’
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:1165:14: call_function: calling ‘test_conversion’ from ‘TestUnicodeConversion’
#   85|   	WINPR_ASSERT(test);
#   86|   
#   87|-> 	const size_t welen = _wcsnlen(test->utf16, test->utf16len);
#   88|   	if (buffersize > welen)
#   89|   	{

Error: GCC_ANALYZER_WARNING (CWE-131): [#def819]
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:118:28: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:1160:5: enter_function: entry to ‘TestUnicodeConversion’
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:1165:14: call_function: calling ‘test_conversion’ from ‘TestUnicodeConversion’
#  116|   	if (rc >= 0)
#  117|   	{
#  118|-> 		if (memcmp(test->utf16, what, rc * sizeof(WCHAR)) != 0)
#  119|   		{
#  120|   			(void)fprintf(stderr, "%s contents does not match expectations: TODO '%s' != '%s'\n",

Error: GCC_ANALYZER_WARNING (CWE-131): [#def820]
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:193:38: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:1160:5: enter_function: entry to ‘TestUnicodeConversion’
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:1165:14: call_function: calling ‘test_conversion’ from ‘TestUnicodeConversion’
#  191|   
#  192|   	const SSIZE_T rc2 = ConvertUtf8ToWChar(test->utf8, NULL, 0);
#  193|-> 	const size_t wlen = _wcsnlen(test->utf16, test->utf16len);
#  194|   	if ((rc2 < 0) || ((size_t)rc2 != wlen))
#  195|   	{

Error: GCC_ANALYZER_WARNING (CWE-131): [#def821]
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:221:38: warning[-Wanalyzer-allocation-size]: allocated buffer size is not a multiple of the pointee's size
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:1160:5: enter_function: entry to ‘TestUnicodeConversion’
FreeRDP-3.12.0/winpr/libwinpr/crt/test/TestUnicodeConversion.c:1165:14: call_function: calling ‘test_conversion’ from ‘TestUnicodeConversion’
#  219|   
#  220|   	const SSIZE_T rc2 = ConvertUtf8NToWChar(test->utf8, test->utf8len, NULL, 0);
#  221|-> 	const size_t wlen = _wcsnlen(test->utf16, test->utf16len);
#  222|   	if ((rc2 < 0) || ((size_t)rc2 != wlen))
#  223|   	{

Error: GCC_ANALYZER_WARNING (CWE-762): [#def822]
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:128:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_RC4_Free’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:80:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:83:46: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:83:46: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:84:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:95:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:95:12: branch_true: following ‘true’ branch (when ‘keylen > 2147483647’)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:96:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:128:9: danger: deallocated with ‘winpr_RC4_Free’ here; allocation at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2) expects deallocation with ‘free’
#  126|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  127|   
#  128|-> 	winpr_RC4_Free(ctx);
#  129|   	WINPR_PRAGMA_DIAG_POP
#  130|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def823]
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:171:9: warning[-Wanalyzer-use-after-free]: use after ‘winpr_RC4_Free’ of ‘ctx’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:78:23: enter_function: entry to ‘winpr_RC4_New_Internal’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:80:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:83:46: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:83:46: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:84:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:95:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:128:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:128:9: call_function: calling ‘winpr_RC4_Free’ from ‘winpr_RC4_New_Internal’
#  169|   	winpr_int_rc4_free(ctx->ictx);
#  170|   #elif defined(WITH_OPENSSL)
#  171|-> 	EVP_CIPHER_CTX_free(ctx->ctx);
#  172|   #endif
#  173|   	free(ctx);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def824]
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:595:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_Cipher_NewEx(cipher,  op,  key, 0,  iv, 0)’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:577:19: enter_function: entry to ‘winpr_Cipher_New’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:580:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:580:16: call_function: calling ‘winpr_Cipher_NewEx’ from ‘winpr_Cipher_New’
#  593|   
#  594|   	WINPR_CIPHER_CTX* ctx = calloc(1, sizeof(WINPR_CIPHER_CTX));
#  595|-> 	if (!ctx)
#  596|   		return NULL;
#  597|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def825]
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:631:31: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_Cipher_NewEx(cipher,  op,  key, 0,  iv, 0)’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:577:19: enter_function: entry to ‘winpr_Cipher_New’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:580:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:580:16: call_function: calling ‘winpr_Cipher_NewEx’ from ‘winpr_Cipher_New’
#  629|   #endif
#  630|   
#  631|-> 	const int operation = (op == WINPR_ENCRYPT) ? 1 : 0;
#  632|   
#  633|   	if (EVP_CipherInit_ex(ctx->ectx, evp, NULL, key, iv, operation) != 1)

Error: GCC_ANALYZER_WARNING (CWE-762): [#def826]
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:667:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_Cipher_Free’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:587:12: branch_false: following ‘false’ branch (when ‘cipher != 42’)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:594:33: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:594:33: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:595:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:598:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:603:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:604:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:667:9: danger: deallocated with ‘winpr_Cipher_Free’ here; allocation at [(3)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/2) expects deallocation with ‘free’
#  665|   
#  666|   fail:
#  667|-> 	winpr_Cipher_Free(ctx);
#  668|   	return NULL;
#  669|   }

Error: GCC_ANALYZER_WARNING (CWE-416): [#def827]
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:753:13: warning[-Wanalyzer-use-after-free]: use after ‘winpr_Cipher_Free’ of ‘ctx’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:583:29: enter_function: entry to ‘winpr_Cipher_NewEx’
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:587:12: branch_false: following ‘false’ branch (when ‘cipher != 42’)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:594:33: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:594:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:595:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:598:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:603:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:604:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:667:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/cipher.c:667:9: call_function: calling ‘winpr_Cipher_Free’ from ‘winpr_Cipher_NewEx’
#  751|   
#  752|   #if defined(WITH_OPENSSL)
#  753|-> 	if (ctx->ectx)
#  754|   		EVP_CIPHER_CTX_free(ctx->ectx);
#  755|   #elif defined(WITH_MBEDTLS)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def828]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:180:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_HMAC_New()’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:406:6: enter_function: entry to ‘winpr_HMAC’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:410:31: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:410:31: call_function: calling ‘winpr_HMAC_New’ from ‘winpr_HMAC’
#  178|   {
#  179|   	WINPR_HMAC_CTX* ctx = (WINPR_HMAC_CTX*)calloc(1, sizeof(WINPR_HMAC_CTX));
#  180|-> 	if (!ctx)
#  181|   		return NULL;
#  182|   #if defined(WITH_OPENSSL)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def829]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:199:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_HMAC_New()’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:406:6: enter_function: entry to ‘winpr_HMAC’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:410:31: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:410:31: call_function: calling ‘winpr_HMAC_New’ from ‘winpr_HMAC’
#  197|   	ctx->xhmac = EVP_MAC_CTX_new(emac);
#  198|   	EVP_MAC_free(emac);
#  199|-> 	if (!ctx->xhmac)
#  200|   		goto fail;
#  201|   #endif

Error: GCC_ANALYZER_WARNING (CWE-762): [#def830]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:210:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_HMAC_Free’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:179:48: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:180:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:194:25: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:195:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:196:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:210:9: danger: deallocated with ‘winpr_HMAC_Free’ here; allocation at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  208|   	WINPR_PRAGMA_DIAG_PUSH
#  209|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  210|-> 	winpr_HMAC_Free(ctx);
#  211|   	WINPR_PRAGMA_DIAG_POP
#  212|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def831]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:380:9: warning[-Wanalyzer-use-after-free]: use after ‘winpr_HMAC_Free’ of ‘ctx’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:177:17: enter_function: entry to ‘winpr_HMAC_New’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:179:48: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:180:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:194:25: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:210:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:210:9: call_function: calling ‘winpr_HMAC_Free’ from ‘winpr_HMAC_New’
#  378|   #if defined(WITH_OPENSSL)
#  379|   #if OPENSSL_VERSION_NUMBER >= 0x30000000L
#  380|-> 	EVP_MAC_CTX_free(ctx->xhmac);
#  381|   #else
#  382|   	HMAC_CTX* hmac = ctx->hmac;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def832]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:426:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_HMAC_New()’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_HMAC_Free’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:406:6: enter_function: entry to ‘winpr_HMAC’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:410:31: call_function: calling ‘winpr_HMAC_New’ from ‘winpr_HMAC’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:410:31: return_function: returning to ‘winpr_HMAC’ from ‘winpr_HMAC_New’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:412:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:415:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:415:14: call_function: calling ‘winpr_HMAC_Init’ from ‘winpr_HMAC’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:415:14: return_function: returning to ‘winpr_HMAC’ from ‘winpr_HMAC_Init’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:426:9: danger: deallocated with ‘winpr_HMAC_Free’ here; allocation at [(4)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘free’
#  424|   	result = TRUE;
#  425|   out:
#  426|-> 	winpr_HMAC_Free(ctx);
#  427|   	return result;
#  428|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def833]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:455:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_Digest_New()’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:771:6: enter_function: entry to ‘winpr_Digest’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:774:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:774:33: call_function: calling ‘winpr_Digest_New’ from ‘winpr_Digest’
#  453|   {
#  454|   	WINPR_DIGEST_CTX* ctx = calloc(1, sizeof(WINPR_DIGEST_CTX));
#  455|-> 	if (!ctx)
#  456|   		return NULL;
#  457|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def834]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:465:12: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_Digest_New()’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:771:6: enter_function: entry to ‘winpr_Digest’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:774:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:774:33: call_function: calling ‘winpr_Digest_New’ from ‘winpr_Digest’
#  463|   	ctx->mdctx = EVP_MD_CTX_new();
#  464|   #endif
#  465|-> 	if (!ctx->mdctx)
#  466|   		goto fail;
#  467|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def835]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:481:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_Digest_Free’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:454:33: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:455:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:463:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:465:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:466:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:481:9: danger: deallocated with ‘winpr_Digest_Free’ here; allocation at [(1)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  479|   	WINPR_PRAGMA_DIAG_PUSH
#  480|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  481|-> 	winpr_Digest_Free(ctx);
#  482|   	WINPR_PRAGMA_DIAG_POP
#  483|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def836]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:726:13: warning[-Wanalyzer-use-after-free]: use after ‘winpr_Digest_Free’ of ‘ctx’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:452:19: enter_function: entry to ‘winpr_Digest_New’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:454:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:455:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:463:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:465:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:466:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:481:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:481:9: call_function: calling ‘winpr_Digest_Free’ from ‘winpr_Digest_New’
#  724|   		return;
#  725|   #if defined(WITH_OPENSSL)
#  726|-> 	if (ctx->mdctx)
#  727|   	{
#  728|   #if (OPENSSL_VERSION_NUMBER < 0x10100000L) || \

Error: GCC_ANALYZER_WARNING (CWE-762): [#def837]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:767:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_Digest_New()’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_Digest_Free’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:747:6: enter_function: entry to ‘winpr_Digest_Allow_FIPS’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:751:33: call_function: calling ‘winpr_Digest_New’ from ‘winpr_Digest_Allow_FIPS’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:751:33: return_function: returning to ‘winpr_Digest_Allow_FIPS’ from ‘winpr_Digest_New’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:753:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:756:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:767:9: danger: deallocated with ‘winpr_Digest_Free’ here; allocation at [(4)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘free’
#  765|   	result = TRUE;
#  766|   out:
#  767|-> 	winpr_Digest_Free(ctx);
#  768|   	return result;
#  769|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def838]
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:790:9: warning[-Wanalyzer-mismatching-deallocation]: ‘winpr_Digest_New()’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_Digest_Free’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:771:6: enter_function: entry to ‘winpr_Digest’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:774:33: call_function: calling ‘winpr_Digest_New’ from ‘winpr_Digest’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:774:33: return_function: returning to ‘winpr_Digest’ from ‘winpr_Digest_New’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:776:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:779:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:779:14: call_function: calling ‘winpr_Digest_Init’ from ‘winpr_Digest’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:779:14: return_function: returning to ‘winpr_Digest’ from ‘winpr_Digest_Init’
FreeRDP-3.12.0/winpr/libwinpr/crypto/hash.c:790:9: danger: deallocated with ‘winpr_Digest_Free’ here; allocation at [(4)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘free’
#  788|   	result = TRUE;
#  789|   out:
#  790|-> 	winpr_Digest_Free(ctx);
#  791|   	return result;
#  792|   }

Error: COMPILER_WARNING (CWE-477): [#def839]
FreeRDP-3.12.0/winpr/libwinpr/crypto/test/TestCryptoCipher.c:27:17: warning[-Wdeprecated-declarations]: ‘winpr_Cipher_New’ is deprecated: [since 3.10.0] use winpr_Cipher_NewEx
#   25|   		                         sizeof(iv));
#   26|   	else
#   27|-> 		ctx = winpr_Cipher_New(WINPR_CIPHER_AES_128_CBC, WINPR_ENCRYPT, key, iv);
#   28|   	if (!ctx)
#   29|   	{

Error: COMPILER_WARNING (CWE-477): [#def840]
FreeRDP-3.12.0/winpr/libwinpr/crypto/test/TestCryptoCipher.c:66:9: warning[-Wdeprecated-declarations]: ‘winpr_Cipher_New’ is deprecated: [since 3.10.0] use winpr_Cipher_NewEx
#   64|   	/* decrypt */
#   65|   
#   66|-> 	if (!(ctx = winpr_Cipher_New(WINPR_CIPHER_AES_128_CBC, WINPR_DECRYPT, key, iv)))
#   67|   	{
#   68|   		(void)fprintf(stderr, "%s: winpr_Cipher_New (decrypt) failed\n", __func__);

Error: GCC_ANALYZER_WARNING (CWE-688): [#def841]
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:126:37: warning[-Wanalyzer-null-argument]: use of NULL ‘ServiceClass’ where non-null expected
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:47:7: enter_function: entry to ‘DsMakeSpnW’
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:63:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:66:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:66:12: branch_false: following ‘false’ branch (when ‘ServiceClass’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:72:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:72:12: branch_true: following ‘true’ branch (when ‘ServiceName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:74:32: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:75:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:78:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:78:12: branch_false: following ‘false’ branch (when ‘InstanceName’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:84:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:84:12: branch_false: following ‘false’ branch (when ‘Referrer’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:90:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:90:15: call_function: calling ‘DsMakeSpnA’ from ‘DsMakeSpnW’
#argument 1 of ‘__builtin_strlen’ must be non-null
#  124|   		return ERROR_INVALID_PARAMETER;
#  125|   
#  126|-> 	ServiceClassLength = (DWORD)strlen(ServiceClass);
#  127|   	ServiceNameLength = (DWORD)strlen(ServiceName);
#  128|   

Error: GCC_ANALYZER_WARNING (CWE-688): [#def842]
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:127:36: warning[-Wanalyzer-null-argument]: use of NULL ‘ServiceName’ where non-null expected
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:47:7: enter_function: entry to ‘DsMakeSpnW’
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:63:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:66:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:66:12: branch_true: following ‘true’ branch (when ‘ServiceClass’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:68:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:69:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:72:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:72:12: branch_false: following ‘false’ branch (when ‘ServiceName’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:78:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:78:12: branch_false: following ‘false’ branch (when ‘InstanceName’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:84:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:84:12: branch_false: following ‘false’ branch (when ‘Referrer’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:90:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/dsparse/dsparse.c:90:15: call_function: calling ‘DsMakeSpnA’ from ‘DsMakeSpnW’
#argument 1 of ‘__builtin_strlen’ must be non-null
#  125|   
#  126|   	ServiceClassLength = (DWORD)strlen(ServiceClass);
#  127|-> 	ServiceNameLength = (DWORD)strlen(ServiceName);
#  128|   
#  129|   	SpnLength = ServiceClassLength + 1 + ServiceNameLength + 1;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def843]
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:371:12: warning[-Wanalyzer-malloc-leak]: leak of ‘MergeEnvironmentStrings(*envBlock,  envstr)’
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:594:6: enter_function: entry to ‘SetEnvironmentVariableEBA’
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:600:12: branch_false: following ‘false’ branch (when ‘lpName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:603:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:608:20: branch_false: following ‘false’ branch (when ‘envstr’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:611:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:626:17: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:626:17: call_function: calling ‘MergeEnvironmentStrings’ from ‘SetEnvironmentVariableEBA’
#  369|   	mergeStrings = (LPCSTR*)calloc(mergeArraySize, sizeof(char*));
#  370|   
#  371|-> 	if (!mergeStrings)
#  372|   		return NULL;
#  373|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def844]
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:378:16: warning[-Wanalyzer-malloc-leak]: leak of ‘MergeEnvironmentStrings(*envBlock,  envstr)’
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:594:6: enter_function: entry to ‘SetEnvironmentVariableEBA’
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:600:12: branch_false: following ‘false’ branch (when ‘lpName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:603:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:608:20: branch_false: following ‘false’ branch (when ‘envstr’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:611:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:626:17: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/environment/environment.c:626:17: call_function: calling ‘MergeEnvironmentStrings’ from ‘SetEnvironmentVariableEBA’
#  376|   	cp = merge;
#  377|   
#  378|-> 	while (*cp && *(cp + 1))
#  379|   	{
#  380|   		length = strlen(cp);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def845]
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:23:16: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘p’
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:20:38: acquire_memory: this call could return NULL
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:23:16: danger: ‘p’ could be NULL: unchecked value from [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#   21|   	p = (TCHAR*)lpszMergedEnvironmentBlock;
#   22|   
#   23|-> 	while (p[0] && p[1])
#   24|   	{
#   25|   		printf("%s\n", p);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def846]
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:30:9: warning[-Wanalyzer-mismatching-deallocation]: ‘MergeEnvironmentStrings(GetEnvironmentStrings(), "SHELL=123\000test=1\000test1=2\000DISPLAY=:77\000\000")’ should have been deallocated with ‘free’ but was deallocated with ‘FreeEnvironmentStringsA’
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:20:38: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:23:16: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:30:9: danger: deallocated with ‘FreeEnvironmentStringsA’ here; allocation at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#   28|   	}
#   29|   
#   30|-> 	FreeEnvironmentStrings(lpszMergedEnvironmentBlock);
#   31|   	FreeEnvironmentStrings(lpszEnvironmentBlock);
#   32|   #endif

Error: GCC_ANALYZER_WARNING (CWE-762): [#def847]
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:30:9: warning[-Wanalyzer-mismatching-deallocation]: ‘p’ should have been deallocated with ‘free’ but was deallocated with ‘FreeEnvironmentStringsA’
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:20:38: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/environment/test/TestEnvironmentMergeEnvironmentStrings.c:30:9: danger: deallocated with ‘FreeEnvironmentStringsA’ here; allocation at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#   28|   	}
#   29|   
#   30|-> 	FreeEnvironmentStrings(lpszMergedEnvironmentBlock);
#   31|   	FreeEnvironmentStrings(lpszEnvironmentBlock);
#   32|   #endif

Error: GCC_ANALYZER_WARNING (CWE-401): [#def848]
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:92:24: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:88:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:95:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:96:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:101:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:103:25: branch_true: following ‘true’ branch (when ‘i != 4’)...
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:105:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:105:36: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:105:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:103:32: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:103:25: branch_true: following ‘true’ branch (when ‘i != 4’)...
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:105:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:105:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:103:32: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/error/test/TestErrorSetLastError.c:92:24: danger: ‘<unknown>’ leaks here; was allocated at [(13)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/12)
#   90|   		printf("GetLastError() failure: Expected: 0x%08X, Actual: 0x%08" PRIX32 "\n",
#   91|   		       ERROR_ACCESS_DENIED, error);
#   92|-> 		return -1;
#   93|   	}
#   94|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def849]
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1468:12: warning[-Wanalyzer-malloc-leak]: leak of ‘fp’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1439:8: enter_function: entry to ‘GetFileHandleForFileDescriptor’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1453:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1456:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1456:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1457:22: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1457:22: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1461:12: branch_false: following ‘false’ branch (when ‘fp’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1464:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1467:17: call_function: calling ‘FileHandle_New’ from ‘GetFileHandleForFileDescriptor’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1467:17: return_function: returning to ‘GetFileHandleForFileDescriptor’ from ‘FileHandle_New’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1468:12: branch_true: following ‘true’ branch...
 branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1468:12: danger: ‘fp’ leaks here; was allocated at [(6)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/5)
# 1466|   	// NOLINTNEXTLINE(clang-analyzer-unix.Stream)
# 1467|   	pFile = FileHandle_New(fp);
# 1468|-> 	if (!pFile)
# 1469|   		return INVALID_HANDLE_VALUE;
# 1470|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def850]
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1478:16: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_fopen(_strdup(lpFileName), "ab")’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:818:15: enter_function: entry to ‘FileCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:834:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:841:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:842:12: branch_false: following ‘false’ branch (when ‘pFile’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:848:9: call_function: inlined call to ‘WINPR_HANDLE_SET_TYPE_AND_MODE’ from ‘FileCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:852:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:859:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:866:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:868:20: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:879:22: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:879:22: call_function: calling ‘winpr_fopen’ from ‘FileCreateFileA’
# 1476|   {
# 1477|   #ifndef _WIN32
# 1478|-> 	return fopen(path, mode);
# 1479|   #else
# 1480|   	LPWSTR lpPathW = NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def851]
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:1478:16: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_fopen(_strdup(lpFileName), FileGetMode(dwDesiredAccess,  dwCreationDisposition, & create))’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:818:15: enter_function: entry to ‘FileCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:834:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:841:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:842:12: branch_false: following ‘false’ branch (when ‘pFile’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:848:9: call_function: inlined call to ‘WINPR_HANDLE_SET_TYPE_AND_MODE’ from ‘FileCreateFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:852:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:859:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:892:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:903:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:903:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:913:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:913:22: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/file.c:913:22: call_function: calling ‘winpr_fopen’ from ‘FileCreateFileA’
# 1476|   {
# 1477|   #ifndef _WIN32
# 1478|-> 	return fopen(path, mode);
# 1479|   #else
# 1480|   	LPWSTR lpPathW = NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def852]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:522:12: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:517:14: enter_function: entry to ‘GetFileAttributesA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:520:24: call_function: calling ‘FindFirstFileA’ from ‘GetFileAttributesA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:520:24: return_function: returning to ‘GetFileAttributesA’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:522:12: danger: ‘<unknown>’ leaks here; was allocated at [(14)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/13)
#  520|   	HANDLE hFind = FindFirstFileA(lpFileName, &findFileData);
#  521|   
#  522|-> 	if (hFind == INVALID_HANDLE_VALUE)
#  523|   		return INVALID_FILE_ATTRIBUTES;
#  524|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def853]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:525:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:517:14: enter_function: entry to ‘GetFileAttributesA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:520:24: call_function: calling ‘FindFirstFileA’ from ‘GetFileAttributesA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:520:24: return_function: returning to ‘GetFileAttributesA’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:522:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:525:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:525:9: danger: ‘<unknown>’ leaks here; was allocated at [(14)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/13)
#  523|   		return INVALID_FILE_ATTRIBUTES;
#  524|   
#  525|-> 	FindClose(hFind);
#  526|   	return findFileData.dwFileAttributes;
#  527|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def854]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:525:9: warning[-Wanalyzer-mismatching-deallocation]: ‘FindFirstFileA(lpFileName, & findFileData)’ should have been deallocated with ‘free’ but was deallocated with ‘FindClose’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:517:14: enter_function: entry to ‘GetFileAttributesA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:520:24: call_function: calling ‘FindFirstFileA’ from ‘GetFileAttributesA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:520:24: return_function: returning to ‘GetFileAttributesA’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:522:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:525:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:525:9: danger: deallocated with ‘FindClose’ here; allocation at [(12)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/11) expects deallocation with ‘free’
#  523|   		return INVALID_FILE_ATTRIBUTES;
#  524|   
#  525|-> 	FindClose(hFind);
#  526|   	return findFileData.dwFileAttributes;
#  527|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def855]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:888:12: warning[-Wanalyzer-malloc-leak]: leak of ‘file_search_new(lpFileName,  flen - patternlen,  ptr + 1, patternlen)’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:994:8: enter_function: entry to ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:996:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1003:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1010:12: branch_false: following ‘false’ branch (when ‘ptr’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1012:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1013:12: branch_false: following ‘false’ branch (when ‘patternlen != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: call_function: calling ‘file_search_new’ from ‘FindFirstFileA’
#  886|   {
#  887|   	WIN32_FILE_SEARCH* pFileSearch = (WIN32_FILE_SEARCH*)calloc(1, sizeof(WIN32_FILE_SEARCH));
#  888|-> 	if (!pFileSearch)
#  889|   		return NULL;
#  890|   	WINPR_ASSERT(sizeof(file_search_magic) == sizeof(pFileSearch->magic));

Error: GCC_ANALYZER_WARNING (CWE-401): [#def856]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:908:29: warning[-Wanalyzer-malloc-leak]: leak of ‘file_search_new(lpFileName,  flen - patternlen,  ptr + 1, patternlen)’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:994:8: enter_function: entry to ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:996:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1003:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1010:12: branch_false: following ‘false’ branch (when ‘ptr’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1012:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1013:12: branch_false: following ‘false’ branch (when ‘patternlen != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: call_function: calling ‘file_search_new’ from ‘FindFirstFileA’
#  906|   		if (stat(name, &fileStat) == 0)
#  907|   		{
#  908|-> 			if (S_ISDIR(fileStat.st_mode))
#  909|   			{
#  910|   				pFileSearch->pDir = opendir(name);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def857]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:926:14: warning[-Wanalyzer-malloc-leak]: leak of ‘file_search_new(lpFileName,  flen - patternlen,  ptr + 1, patternlen)’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:994:8: enter_function: entry to ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:996:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1003:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1010:12: branch_false: following ‘false’ branch (when ‘ptr’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1012:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1013:12: branch_false: following ‘false’ branch (when ‘patternlen != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: call_function: calling ‘file_search_new’ from ‘FindFirstFileA’
#  924|   		}
#  925|   	}
#  926|-> 	if (!pFileSearch->pDir)
#  927|   		goto fail;
#  928|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def858]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:933:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:888:12: branch_false: following ‘false’ branch (when ‘pFileSearch’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:891:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:894:34: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:895:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:896:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:933:9: danger: ‘<unknown>’ leaks here; was allocated at [(3)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/2)
#  931|   	WINPR_PRAGMA_DIAG_PUSH
#  932|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  933|-> 	FindClose(pFileSearch);
#  934|   	WINPR_PRAGMA_DIAG_POP
#  935|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def859]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:933:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pFileSearch’ should have been deallocated with ‘free’ but was deallocated with ‘FindClose’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:887:62: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:888:12: branch_false: following ‘false’ branch (when ‘pFileSearch’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:891:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:895:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:896:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:933:9: danger: deallocated with ‘FindClose’ here; allocation at [(1)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  931|   	WINPR_PRAGMA_DIAG_PUSH
#  932|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  933|-> 	FindClose(pFileSearch);
#  934|   	WINPR_PRAGMA_DIAG_POP
#  935|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def860]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:996:13: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(ConvertWCharToUtf8Alloc(lpFileName, 0), fd)’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1057:8: enter_function: entry to ‘FindFirstFileW’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1061:12: branch_false: following ‘false’ branch (when ‘lpFileName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1064:53: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1066:12: branch_false: following ‘false’ branch (when ‘fd’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1072:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1073:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: call_function: calling ‘FindFirstFileA’ from ‘FindFirstFileW’
#  994|   HANDLE FindFirstFileA(LPCSTR lpFileName, LPWIN32_FIND_DATAA lpFindFileData)
#  995|   {
#  996|-> 	if (!lpFindFileData || !lpFileName)
#  997|   	{
#  998|   		SetLastError(ERROR_BAD_ARGUMENTS);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def861]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:996:13: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(lpFileName, & findFileData)’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:517:14: enter_function: entry to ‘GetFileAttributesA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:520:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:520:24: call_function: calling ‘FindFirstFileA’ from ‘GetFileAttributesA’
#  994|   HANDLE FindFirstFileA(LPCSTR lpFileName, LPWIN32_FIND_DATAA lpFindFileData)
#  995|   {
#  996|-> 	if (!lpFindFileData || !lpFileName)
#  997|   	{
#  998|   		SetLastError(ERROR_BAD_ARGUMENTS);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def862]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1028:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:994:8: enter_function: entry to ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:996:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1003:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1010:12: branch_false: following ‘false’ branch (when ‘ptr’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1012:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1013:12: branch_false: following ‘false’ branch (when ‘patternlen != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: call_function: calling ‘file_search_new’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: return_function: returning to ‘FindFirstFileA’ from ‘file_search_new’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1018:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1024:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1024:13: call_function: calling ‘FindNextFileA’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1024:13: return_function: returning to ‘FindFirstFileA’ from ‘FindNextFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1024:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1027:1: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1028:9: danger: ‘<unknown>’ leaks here; was allocated at [(14)](sarif:/runs/0/results/13/codeFlows/0/threadFlows/0/locations/13)
# 1026|   
# 1027|   fail:
# 1028|-> 	FindClose(pFileSearch);
# 1029|   	return INVALID_HANDLE_VALUE;
# 1030|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def863]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1028:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pFileSearch’ should have been deallocated with ‘free’ but was deallocated with ‘FindClose’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:994:8: enter_function: entry to ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:996:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1003:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1010:12: branch_false: following ‘false’ branch (when ‘ptr’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1012:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1013:12: branch_false: following ‘false’ branch (when ‘patternlen != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: call_function: calling ‘file_search_new’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: return_function: returning to ‘FindFirstFileA’ from ‘file_search_new’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1018:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1024:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1024:13: call_function: calling ‘FindNextFileA’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1024:13: return_function: returning to ‘FindFirstFileA’ from ‘FindNextFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1024:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1027:1: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1028:9: danger: deallocated with ‘FindClose’ here; allocation at [(10)](sarif:/runs/0/results/15/codeFlows/0/threadFlows/0/locations/9) expects deallocation with ‘free’
# 1026|   
# 1027|   fail:
# 1028|-> 	FindClose(pFileSearch);
# 1029|   	return INVALID_HANDLE_VALUE;
# 1030|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def864]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1083:12: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1057:8: enter_function: entry to ‘FindFirstFileW’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1061:12: branch_false: following ‘false’ branch (when ‘lpFileName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1064:53: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1066:12: branch_false: following ‘false’ branch (when ‘fd’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1072:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1073:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: call_function: calling ‘FindFirstFileA’ from ‘FindFirstFileW’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: return_function: returning to ‘FindFirstFileW’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1083:12: danger: ‘<unknown>’ leaks here; was allocated at [(20)](sarif:/runs/0/results/16/codeFlows/0/threadFlows/0/locations/19)
# 1081|   	free(utfFileName);
# 1082|   
# 1083|-> 	if (h != INVALID_HANDLE_VALUE)
# 1084|   	{
# 1085|   		if (!ConvertFindDataAToW(fd, lpFindFileData))

Error: GCC_ANALYZER_WARNING (CWE-401): [#def865]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1088:25: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1057:8: enter_function: entry to ‘FindFirstFileW’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1061:12: branch_false: following ‘false’ branch (when ‘lpFileName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1064:53: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1066:12: branch_false: following ‘false’ branch (when ‘fd’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1072:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1073:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: call_function: calling ‘FindFirstFileA’ from ‘FindFirstFileW’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: return_function: returning to ‘FindFirstFileW’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1083:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1085:22: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1085:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1087:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1088:25: danger: ‘<unknown>’ leaks here; was allocated at [(20)](sarif:/runs/0/results/17/codeFlows/0/threadFlows/0/locations/19)
# 1086|   		{
# 1087|   			SetLastError(ERROR_NOT_ENOUGH_MEMORY);
# 1088|-> 			FindClose(h);
# 1089|   			h = INVALID_HANDLE_VALUE;
# 1090|   			goto out;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def866]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1088:25: warning[-Wanalyzer-mismatching-deallocation]: ‘FindFirstFileA(ConvertWCharToUtf8Alloc(lpFileName, 0), fd)’ should have been deallocated with ‘free’ but was deallocated with ‘FindClose’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1057:8: enter_function: entry to ‘FindFirstFileW’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1061:12: branch_false: following ‘false’ branch (when ‘lpFileName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1064:53: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1066:12: branch_false: following ‘false’ branch (when ‘fd’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1072:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1073:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: call_function: calling ‘FindFirstFileA’ from ‘FindFirstFileW’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: return_function: returning to ‘FindFirstFileW’ from ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1083:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1085:22: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1085:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1087:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1088:25: danger: deallocated with ‘FindClose’ here; allocation at [(18)](sarif:/runs/0/results/18/codeFlows/0/threadFlows/0/locations/17) expects deallocation with ‘free’
# 1086|   		{
# 1087|   			SetLastError(ERROR_NOT_ENOUGH_MEMORY);
# 1088|-> 			FindClose(h);
# 1089|   			h = INVALID_HANDLE_VALUE;
# 1090|   			goto out;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def867]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1223:12: warning[-Wanalyzer-malloc-leak]: leak of ‘file_search_new(lpFileName,  flen - patternlen,  ptr + 1, patternlen)’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:994:8: enter_function: entry to ‘FindFirstFileA’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:996:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1003:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1010:12: branch_false: following ‘false’ branch (when ‘ptr’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1012:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1013:12: branch_false: following ‘false’ branch (when ‘patternlen != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1016:23: call_function: calling ‘file_search_new’ from ‘FindFirstFileA’
# 1221|   		 * Disable this return to stop confusing the analyzer. */
# 1222|   #ifndef __clang_analyzer__
# 1223|-> 	if (!is_valid_file_search_handle(hFindFile))
# 1224|   		return FALSE;
# 1225|   #endif

Error: GCC_ANALYZER_WARNING (CWE-416): [#def868]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1227:14: warning[-Wanalyzer-use-after-free]: use after ‘FindClose’ of ‘hFindFile’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:884:27: enter_function: entry to ‘file_search_new’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:887:62: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:888:12: branch_false: following ‘false’ branch (when ‘pFileSearch’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:891:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:933:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:933:9: call_function: calling ‘FindClose’ from ‘file_search_new’
# 1225|   #endif
# 1226|   
# 1227|-> 	free(pFileSearch->lpPath);
# 1228|   	free(pFileSearch->lpPattern);
# 1229|   

Error: GCC_ANALYZER_WARNING (CWE-457): [#def869]
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1227:14: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*(WIN32_FILE_SEARCH *)hFindFile.lpPath’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1057:8: enter_function: entry to ‘FindFirstFileW’
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1061:12: branch_false: following ‘false’ branch (when ‘lpFileName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1064:53: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1066:12: branch_false: following ‘false’ branch (when ‘fd’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1072:23: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1073:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/generic.c:1080:13: call_function: calling ‘FindFirstFileA’ from ‘FindFirstFileW’
# 1225|   #endif
# 1226|   
# 1227|-> 	free(pFileSearch->lpPath);
# 1228|   	free(pFileSearch->lpPattern);
# 1229|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def870]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:26:20: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileA(&FilePath, 268435456, 0, 0, 2, 128, 0)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:15:28: branch_true: following ‘true’ branch (when ‘x != 10’)...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:18:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:25:21: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:26:20: danger: ‘CreateFileA(&FilePath, 268435456, 0, 0, 2, 128, 0)’ leaks here; was allocated at [(4)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/3)
#   24|   		HANDLE hdl =
#   25|   		    CreateFileA(FilePath, GENERIC_ALL, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL);
#   26|-> 		if (hdl == INVALID_HANDLE_VALUE)
#   27|   			return FALSE;
#   28|   		ArrayList_Append(files, FilePath);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def871]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:101:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(FilePath, & FindData)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:85:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:101:12: danger: ‘FindFirstFileA(FilePath, & FindData)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/0)
#   99|   	rc = TRUE;
#  100|   fail:
#  101|-> 	if (hFind != INVALID_HANDLE_VALUE)
#  102|   		FindClose(hFind);
#  103|   	return rc;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def872]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:115:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(&BasePathDot, & FindData)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:114:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:115:12: danger: ‘FindFirstFileA(&BasePathDot, & FindData)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  113|   	WIN32_FIND_DATAA FindData = { 0 };
#  114|   	HANDLE hFind = FindFirstFileA(BasePathDot, &FindData);
#  115|-> 	if (hFind == INVALID_HANDLE_VALUE)
#  116|   		return FALSE;
#  117|   	size_t count = 0;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def873]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:142:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(&BasePathDot, & FindData)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:141:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:142:12: danger: ‘FindFirstFileA(&BasePathDot, & FindData)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0)
#  140|   	WIN32_FIND_DATAA FindData = { 0 };
#  141|   	HANDLE hFind = FindFirstFileA(BasePathDot, &FindData);
#  142|-> 	if (hFind == INVALID_HANDLE_VALUE)
#  143|   		return FALSE;
#  144|   	size_t count = 0;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def874]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:186:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(FilePath, & FindData)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:185:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindFirstFile.c:186:12: danger: ‘FindFirstFileA(FilePath, & FindData)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/0)
#  184|   	WIN32_FIND_DATAA FindData = { 0 };
#  185|   	HANDLE hFind = FindFirstFileA(FilePath, &FindData);
#  186|-> 	if (hFind == INVALID_HANDLE_VALUE)
#  187|   		return TRUE;
#  188|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def875]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:52:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(&FilePath, & FindData)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:34:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:40:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:50:17: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:52:12: danger: ‘FindFirstFileA(&FilePath, & FindData)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#   50|   	hFind = FindFirstFile(FilePath, &FindData);
#   51|   
#   52|-> 	if (hFind == INVALID_HANDLE_VALUE)
#   53|   	{
#   54|   		_tprintf(_T("FindFirstFile failure: %s\n"), FilePath);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def876]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:64:13: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileA(&FilePath, & FindData)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:34:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:40:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:50:17: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:52:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:58:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:64:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:65:14: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestFileFindNextFile.c:64:13: danger: ‘FindFirstFileA(&FilePath, & FindData)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#   62|   	 */
#   63|   
#   64|-> 	if ((_tcsncmp(FindData.cFileName, testDirectory2File1, ARRAYSIZE(testDirectory2File1)) != 0) &&
#   65|   	    (_tcsncmp(FindData.cFileName, testDirectory2File2, ARRAYSIZE(testDirectory2File2)) != 0))
#   66|   	{

Error: GCC_ANALYZER_WARNING (CWE-401): [#def877]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:58:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileA(GetKnownSubPath(2, "afsklhjwe4oq5iu432oijrlkejadlkhjaklhfdkahfd"), 3221225472, 0, 0, 1, 128, 0)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:41:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:44:28: branch_true: following ‘true’ branch (when ‘x != 20’)...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:46:29: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:48:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:51:34: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:52:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:44:53: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:56:18: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:58:12: danger: ‘CreateFileA(GetKnownSubPath(2, "afsklhjwe4oq5iu432oijrlkejadlkhjaklhfdkahfd"), 3221225472, 0, 0, 1, 128, 0)’ leaks here; was allocated at [(9)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/8)
#   56|   	handle = CreateFileA(name, GENERIC_READ | GENERIC_WRITE, 0, NULL, CREATE_NEW,
#   57|   	                     FILE_ATTRIBUTE_NORMAL, NULL);
#   58|-> 	if (handle == INVALID_HANDLE_VALUE)
#   59|   		goto fail;
#   60|   	(void)CloseHandle(handle);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def878]
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:114:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileW(ConvertUtf8ToWCharAlloc(GetKnownSubPath(2, "afsklhjwe4oq5iu432oijrlkejadlkhjaklhfdkahfd"), 0), 3221225472, 0, 0, 1, 128, 0)’
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:93:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:96:16: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:97:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:100:28: branch_true: following ‘true’ branch (when ‘x != 20’)...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:102:29: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:104:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:107:34: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:108:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:100:53: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:112:18: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/file/test/TestSetFileAttributes.c:114:12: danger: ‘CreateFileW(ConvertUtf8ToWCharAlloc(GetKnownSubPath(2, "afsklhjwe4oq5iu432oijrlkejadlkhjaklhfdkahfd"), 0), 3221225472, 0, 0, 1, 128, 0)’ leaks here; was allocated at [(11)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/10)
#  112|   	handle = CreateFileW(name, GENERIC_READ | GENERIC_WRITE, 0, NULL, CREATE_NEW,
#  113|   	                     FILE_ATTRIBUTE_NORMAL, NULL);
#  114|-> 	if (handle == INVALID_HANDLE_VALUE)
#  115|   		goto fail;
#  116|   	(void)CloseHandle(handle);

Error: GCC_ANALYZER_WARNING (CWE-476): [#def879]
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:46:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘winpr_aligned_malloc(24, 16)’
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:24:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:30:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:32:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:40:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:42:25: branch_true: following ‘true’ branch (when ‘Count != 11’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:45:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:45:33: acquire_memory: this call could return NULL
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:46:17: danger: ‘winpr_aligned_malloc(24, 16)’ could be NULL: unchecked value from [(7)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/6)
#   44|   		pListItem =
#   45|   		    (PLIST_ITEM)winpr_aligned_malloc(sizeof(LIST_ITEM), MEMORY_ALLOCATION_ALIGNMENT);
#   46|-> 		pListItem->Signature = Count;
#   47|   		InsertHeadList(pListHead, &(pListItem->ItemEntry));
#   48|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def880]
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:47:17: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_malloc(24, 16)’
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:24:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:30:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:32:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:40:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:42:25: branch_true: following ‘true’ branch (when ‘Count != 11’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:45:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:45:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:47:17: danger: ‘winpr_aligned_malloc(24, 16)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6)
#   45|   		    (PLIST_ITEM)winpr_aligned_malloc(sizeof(LIST_ITEM), MEMORY_ALLOCATION_ALIGNMENT);
#   46|   		pListItem->Signature = Count;
#   47|-> 		InsertHeadList(pListHead, &(pListItem->ItemEntry));
#   48|   	}
#   49|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def881]
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:65:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘winpr_aligned_malloc(24, 16)’
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:24:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:30:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:32:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:40:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:42:25: branch_true: following ‘true’ branch (when ‘Count != 11’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:45:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:50:26: branch_true: following ‘true’ branch (when ‘Count != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:52:30: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:61:25: branch_true: following ‘true’ branch (when ‘Count != 11’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:64:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:64:33: acquire_memory: this call could return NULL
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:65:17: danger: ‘winpr_aligned_malloc(24, 16)’ could be NULL: unchecked value from [(11)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/10)
#   63|   		pListItem =
#   64|   		    (PLIST_ITEM)winpr_aligned_malloc(sizeof(LIST_ITEM), MEMORY_ALLOCATION_ALIGNMENT);
#   65|-> 		pListItem->Signature = Count;
#   66|   		InsertTailList(pListHead, &(pListItem->ItemEntry));
#   67|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def882]
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:66:17: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_malloc(24, 16)’
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:24:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:30:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:32:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:40:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:42:25: branch_true: following ‘true’ branch (when ‘Count != 11’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:45:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:50:26: branch_true: following ‘true’ branch (when ‘Count != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:52:30: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:61:25: branch_true: following ‘true’ branch (when ‘Count != 11’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:64:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:64:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedDList.c:66:17: danger: ‘winpr_aligned_malloc(24, 16)’ leaks here; was allocated at [(11)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/10)
#   64|   		    (PLIST_ITEM)winpr_aligned_malloc(sizeof(LIST_ITEM), MEMORY_ALLOCATION_ALIGNMENT);
#   65|   		pListItem->Signature = Count;
#   66|-> 		InsertTailList(pListHead, &(pListItem->ItemEntry));
#   67|   	}
#   68|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def883]
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:46:43: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_aligned_malloc(16, 16)’
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:26:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:32:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:35:31: branch_true: following ‘true’ branch (when ‘Count != 23’)...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:38:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:38:36: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:40:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:46:43: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/interlocked/test/TestInterlockedSList.c:46:43: danger: ‘winpr_aligned_malloc(16, 16)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/4)
#   44|   		}
#   45|   
#   46|-> 		pProgramItem->Signature = Count + 1UL;
#   47|   		WINPR_PSLIST_ENTRY pFirstEntry =
#   48|   		    InterlockedPushEntrySList(pListHead, &(pProgramItem->ItemEntry));

Error: GCC_ANALYZER_WARNING (CWE-122): [#def884]
FreeRDP-3.12.0/winpr/libwinpr/library/library.c:296:9: warning[-Wanalyzer-out-of-bounds]: heap-based buffer overflow
FreeRDP-3.12.0/winpr/libwinpr/library/library.c:237:7: enter_function: entry to ‘GetModuleFileNameW’
FreeRDP-3.12.0/winpr/libwinpr/library/library.c:240:12: branch_false: following ‘false’ branch (when ‘lpFilename’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/library/library.c:246:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/library/library.c:247:12: branch_false: following ‘false’ branch (when ‘name’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/library/library.c:252:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/library/library.c:252:18: call_function: calling ‘GetModuleFileNameA’ from ‘GetModuleFileNameW’
#  294|   
#  295|   	CopyMemory(lpFilename, buffer, nSize - 1);
#  296|-> 	lpFilename[nSize - 1] = '\0';
#  297|   	SetLastError(ERROR_INSUFFICIENT_BUFFER);
#  298|   	return nSize;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def885]
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1168:12: warning[-Wanalyzer-malloc-leak]: leak of ‘FindFirstFileW(path_slash, & findFileData)’
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1144:6: enter_function: entry to ‘winpr_RemoveDirectory_RecursiveW’
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1148:12: branch_false: following ‘false’ branch (when ‘lpPathName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1151:36: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1154:12: branch_false: following ‘false’ branch (when ‘path_slash’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1156:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1160:28: call_function: calling ‘NativePathCchAppendW’ from ‘winpr_RemoveDirectory_RecursiveW’
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1160:28: return_function: returning to ‘winpr_RemoveDirectory_RecursiveW’ from ‘NativePathCchAppendW’
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1162:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1165:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1166:15: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/path.c:1168:12: danger: ‘FindFirstFileW(path_slash, & findFileData)’ leaks here; was allocated at [(19)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/18)
# 1166|   	dir = FindFirstFileW(path_slash, &findFileData);
# 1167|   
# 1168|-> 	if (dir == INVALID_HANDLE_VALUE)
# 1169|   		goto fail;
# 1170|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def886]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:74:12: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("HOME")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:353:7: enter_function: entry to ‘GetKnownPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:360:32: call_function: inlined call to ‘GetPath_HOME’ from ‘GetKnownPath’
#   72|   	nSize = GetEnvironmentVariableX(lpName, NULL, 0);
#   73|   
#   74|-> 	if (nSize > 0)
#   75|   	{
#   76|   		env = malloc(nSize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def887]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:74:12: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("TMPDIR")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:353:7: enter_function: entry to ‘GetKnownPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:364:32: call_function: calling ‘GetPath_TEMP’ from ‘GetKnownPath’
#   72|   	nSize = GetEnvironmentVariableX(lpName, NULL, 0);
#   73|   
#   74|-> 	if (nSize > 0)
#   75|   	{
#   76|   		env = malloc(nSize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def888]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:74:12: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("XDG_CACHE_HOME")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:241:14: enter_function: entry to ‘GetPath_XDG_CACHE_HOME’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:271:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:271:16: call_function: calling ‘GetEnvAlloc’ from ‘GetPath_XDG_CACHE_HOME’
#   72|   	nSize = GetEnvironmentVariableX(lpName, NULL, 0);
#   73|   
#   74|-> 	if (nSize > 0)
#   75|   	{
#   76|   		env = malloc(nSize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def889]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:74:12: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("XDG_CONFIG_HOME")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:164:14: enter_function: entry to ‘GetPath_XDG_CONFIG_HOME’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:192:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:192:16: call_function: calling ‘GetEnvAlloc’ from ‘GetPath_XDG_CONFIG_HOME’
#   72|   	nSize = GetEnvironmentVariableX(lpName, NULL, 0);
#   73|   
#   74|-> 	if (nSize > 0)
#   75|   	{
#   76|   		env = malloc(nSize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def890]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:74:12: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("XDG_DATA_HOME")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:353:7: enter_function: entry to ‘GetKnownPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:368:32: call_function: calling ‘GetPath_XDG_DATA_HOME’ from ‘GetKnownPath’
#   72|   	nSize = GetEnvironmentVariableX(lpName, NULL, 0);
#   73|   
#   74|-> 	if (nSize > 0)
#   75|   	{
#   76|   		env = malloc(nSize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def891]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:74:12: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("XDG_RUNTIME_DIR")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:296:7: enter_function: entry to ‘GetPath_XDG_RUNTIME_DIR’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:343:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:343:16: call_function: calling ‘GetEnvAlloc’ from ‘GetPath_XDG_RUNTIME_DIR’
#   72|   	nSize = GetEnvironmentVariableX(lpName, NULL, 0);
#   73|   
#   74|-> 	if (nSize > 0)
#   75|   	{
#   76|   		env = malloc(nSize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def892]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:76:23: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("HOME")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:353:7: enter_function: entry to ‘GetKnownPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:360:32: call_function: inlined call to ‘GetPath_HOME’ from ‘GetKnownPath’
#   74|   	if (nSize > 0)
#   75|   	{
#   76|-> 		env = malloc(nSize);
#   77|   
#   78|   		if (!env)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def893]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:76:23: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("TMPDIR")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:353:7: enter_function: entry to ‘GetKnownPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:364:32: call_function: calling ‘GetPath_TEMP’ from ‘GetKnownPath’
#   74|   	if (nSize > 0)
#   75|   	{
#   76|-> 		env = malloc(nSize);
#   77|   
#   78|   		if (!env)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def894]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:76:23: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("XDG_CACHE_HOME")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:241:14: enter_function: entry to ‘GetPath_XDG_CACHE_HOME’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:271:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:271:16: call_function: calling ‘GetEnvAlloc’ from ‘GetPath_XDG_CACHE_HOME’
#   74|   	if (nSize > 0)
#   75|   	{
#   76|-> 		env = malloc(nSize);
#   77|   
#   78|   		if (!env)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def895]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:76:23: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("XDG_CONFIG_HOME")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:164:14: enter_function: entry to ‘GetPath_XDG_CONFIG_HOME’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:192:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:192:16: call_function: calling ‘GetEnvAlloc’ from ‘GetPath_XDG_CONFIG_HOME’
#   74|   	if (nSize > 0)
#   75|   	{
#   76|-> 		env = malloc(nSize);
#   77|   
#   78|   		if (!env)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def896]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:76:23: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("XDG_DATA_HOME")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:353:7: enter_function: entry to ‘GetKnownPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:368:32: call_function: calling ‘GetPath_XDG_DATA_HOME’ from ‘GetKnownPath’
#   74|   	if (nSize > 0)
#   75|   	{
#   76|-> 		env = malloc(nSize);
#   77|   
#   78|   		if (!env)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def897]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:76:23: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvAlloc("XDG_RUNTIME_DIR")’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:296:7: enter_function: entry to ‘GetPath_XDG_RUNTIME_DIR’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:343:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:343:16: call_function: calling ‘GetEnvAlloc’ from ‘GetPath_XDG_RUNTIME_DIR’
#   74|   	if (nSize > 0)
#   75|   	{
#   76|-> 		env = malloc(nSize);
#   77|   
#   78|   		if (!env)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def898]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:76:23: warning[-Wanalyzer-malloc-leak]: leak of ‘GetKnownPath(id)’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:398:7: enter_function: entry to ‘GetKnownSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:400:27: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:400:27: call_function: calling ‘GetKnownPath’ from ‘GetKnownSubPath’
#   74|   	if (nSize > 0)
#   75|   	{
#   76|-> 		env = malloc(nSize);
#   77|   
#   78|   		if (!env)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def899]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:393:17: warning[-Wanalyzer-malloc-leak]: leak of ‘GetKnownPath(id)’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:398:7: enter_function: entry to ‘GetKnownSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:400:27: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:400:27: call_function: calling ‘GetKnownPath’ from ‘GetKnownSubPath’
#  391|   
#  392|   	if (!path)
#  393|-> 		WLog_WARN(TAG, "Path %s is %p", GetKnownPathIdString(WINPR_ASSERTING_INT_CAST(int, id)),
#  394|   		          path);
#  395|   	return path;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def900]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:395:16: warning[-Wanalyzer-malloc-leak]: leak of ‘GetKnownPath(id)’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:398:7: enter_function: entry to ‘GetKnownSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:400:27: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:400:27: call_function: calling ‘GetKnownPath’ from ‘GetKnownSubPath’
#  393|   		WLog_WARN(TAG, "Path %s is %p", GetKnownPathIdString(WINPR_ASSERTING_INT_CAST(int, id)),
#  394|   		          path);
#  395|-> 	return path;
#  396|   }
#  397|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def901]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:416:12: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvironmentPath(name)’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:435:7: enter_function: entry to ‘GetEnvironmentSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:439:15: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:439:15: call_function: calling ‘GetEnvironmentPath’ from ‘GetEnvironmentSubPath’
#  414|   	nSize = GetEnvironmentVariableX(name, NULL, 0);
#  415|   
#  416|-> 	if (nSize)
#  417|   	{
#  418|   		env = (LPSTR)malloc(nSize);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def902]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:418:30: warning[-Wanalyzer-malloc-leak]: leak of ‘GetEnvironmentPath(name)’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:435:7: enter_function: entry to ‘GetEnvironmentSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:439:15: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:439:15: call_function: calling ‘GetEnvironmentPath’ from ‘GetEnvironmentSubPath’
#  416|   	if (nSize)
#  417|   	{
#  418|-> 		env = (LPSTR)malloc(nSize);
#  419|   
#  420|   		if (!env)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def903]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:464:18: warning[-Wanalyzer-malloc-leak]: leak of ‘GetCombinedPath(GetEnvironmentPath(name), path)’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:435:7: enter_function: entry to ‘GetEnvironmentSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:439:15: call_function: calling ‘GetEnvironmentPath’ from ‘GetEnvironmentSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:439:15: return_function: returning to ‘GetEnvironmentSubPath’ from ‘GetEnvironmentPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:441:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:444:19: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:444:19: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:444:19: call_function: calling ‘GetCombinedPath’ from ‘GetEnvironmentSubPath’
#  462|   		subPathLength = strlen(subPath);
#  463|   
#  464|-> 	length = basePathLength + subPathLength + 1;
#  465|   	path = (char*)calloc(1, length + 1);
#  466|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def904]
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:464:18: warning[-Wanalyzer-malloc-leak]: leak of ‘GetCombinedPath(GetKnownPath(id), path)’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:398:7: enter_function: entry to ‘GetKnownSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:400:27: call_function: calling ‘GetKnownPath’ from ‘GetKnownSubPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:400:27: return_function: returning to ‘GetKnownSubPath’ from ‘GetKnownPath’
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:401:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:404:25: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:404:25: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/path/shell.c:404:25: call_function: calling ‘GetCombinedPath’ from ‘GetKnownSubPath’
#  462|   		subPathLength = strlen(subPath);
#  463|   
#  464|-> 	length = basePathLength + subPathLength + 1;
#  465|   	path = (char*)calloc(1, length + 1);
#  466|   

Error: GCC_ANALYZER_WARNING (CWE-126): [#def905]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslash.c:25:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
#   23|   	 */
#   24|   
#   25|-> 	_tcsncpy(Path, testPathNoBackslash, ARRAYSIZE(Path));
#   26|   
#   27|   	/* Add a backslash to a path without a trailing backslash, expect S_OK */

Error: GCC_ANALYZER_WARNING (CWE-126): [#def906]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslash.c:45:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslash.c:31:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslash.c:37:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslash.c:37:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslash.c:45:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslash.c:45:9: danger: out-of-bounds read from byte 18 till byte 32767 but ‘testPathBackslash’ ends at byte 18
#   43|   	/* Add a backslash to a path with a trailing backslash, expect S_FALSE */
#   44|   
#   45|-> 	_tcsncpy(Path, testPathBackslash, ARRAYSIZE(Path));
#   46|   
#   47|   	status = PathCchAddBackslash(Path, PATHCCH_MAX_CCH);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def907]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslashEx.c:27:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
#   25|   	 */
#   26|   
#   27|-> 	_tcsncpy(Path, testPathNoBackslash, ARRAYSIZE(Path));
#   28|   
#   29|   	/* Add a backslash to a path without a trailing backslash, expect S_OK */

Error: GCC_ANALYZER_WARNING (CWE-126): [#def908]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslashEx.c:47:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslashEx.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslashEx.c:39:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslashEx.c:39:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslashEx.c:47:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddBackslashEx.c:47:9: danger: out-of-bounds read from byte 18 till byte 32767 but ‘testPathBackslash’ ends at byte 18
#   45|   	/* Add a backslash to a path with a trailing backslash, expect S_FALSE */
#   46|   
#   47|-> 	_tcsncpy(Path, testPathBackslash, ARRAYSIZE(Path));
#   48|   
#   49|   	status = PathCchAddBackslashEx(Path, sizeof(Path) / sizeof(TCHAR), &pszEnd, &cchRemaining);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def909]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:23:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
#   21|   	/* Path: no extension, Extension: dot */
#   22|   
#   23|-> 	_tcsncpy(Path, testPathNoExtension, ARRAYSIZE(Path));
#   24|   
#   25|   	status = PathCchAddExtension(Path, PATHCCH_MAX_CCH, testExtDot);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def910]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:41:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:27:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:33:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:41:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:41:9: danger: out-of-bounds read from byte 24 till byte 32767 but ‘testPathNoExtension’ ends at byte 24
#   39|   	/* Path: no extension, Extension: no dot */
#   40|   
#   41|-> 	_tcsncpy(Path, testPathNoExtension, ARRAYSIZE(Path));
#   42|   
#   43|   	status = PathCchAddExtension(Path, PATHCCH_MAX_CCH, testExtNoDot);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def911]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:59:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:27:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:33:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:41:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:45:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:51:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:51:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:59:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:59:9: danger: out-of-bounds read from byte 28 till byte 32767 but ‘testPathExtension’ ends at byte 28
#   57|   	/* Path: extension, Extension: dot */
#   58|   
#   59|-> 	_tcsncpy(Path, testPathExtension, ARRAYSIZE(Path));
#   60|   
#   61|   	status = PathCchAddExtension(Path, PATHCCH_MAX_CCH, testExtDot);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def912]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:77:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:27:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:33:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:41:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:45:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:51:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:51:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:59:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:63:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:69:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:69:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:77:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAddExtension.c:77:9: danger: out-of-bounds read from byte 28 till byte 32767 but ‘testPathExtension’ ends at byte 28
#   75|   	/* Path: extension, Extension: no dot */
#   76|   
#   77|-> 	_tcsncpy(Path, testPathExtension, ARRAYSIZE(Path));
#   78|   
#   79|   	status = PathCchAddExtension(Path, PATHCCH_MAX_CCH, testExtDot);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def913]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:24:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
#   22|   	/* Base Path: Backslash, More Path: No Backslash */
#   23|   
#   24|-> 	_tcsncpy(Path, testBasePathBackslash, ARRAYSIZE(Path));
#   25|   
#   26|   	status = PathCchAppend(Path, PATHCCH_MAX_CCH, testMorePathNoBackslash);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def914]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:42:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:28:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:42:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:42:9: danger: out-of-bounds read from byte 18 till byte 32767 but ‘testBasePathBackslash’ ends at byte 18
#   40|   	/* Base Path: Backslash, More Path: Backslash */
#   41|   
#   42|-> 	_tcsncpy(Path, testBasePathBackslash, ARRAYSIZE(Path));
#   43|   
#   44|   	status = PathCchAppend(Path, PATHCCH_MAX_CCH, testMorePathBackslash);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def915]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:60:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:28:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:42:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:46:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:60:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:60:9: danger: out-of-bounds read from byte 17 till byte 32767 but ‘testBasePathNoBackslash’ ends at byte 17
#   58|   	/* Base Path: No Backslash, More Path: Backslash */
#   59|   
#   60|-> 	_tcsncpy(Path, testBasePathNoBackslash, ARRAYSIZE(Path));
#   61|   
#   62|   	status = PathCchAppend(Path, PATHCCH_MAX_CCH, testMorePathBackslash);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def916]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:78:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:28:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:42:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:46:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:60:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:64:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:70:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:70:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:78:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:78:9: danger: out-of-bounds read from byte 17 till byte 32767 but ‘testBasePathNoBackslash’ ends at byte 17
#   76|   	/* Base Path: No Backslash, More Path: No Backslash */
#   77|   
#   78|-> 	_tcsncpy(Path, testBasePathNoBackslash, ARRAYSIZE(Path));
#   79|   
#   80|   	status = PathCchAppend(Path, PATHCCH_MAX_CCH, testMorePathNoBackslash);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def917]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:105:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:28:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:42:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:46:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:60:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:64:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:70:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:70:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:78:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:82:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:88:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:88:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:95:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:96:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:105:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:105:9: danger: out-of-bounds read from byte 17 till byte 32767 but ‘testBasePathNoBackslash’ ends at byte 17
#  103|   
#  104|   	/* According to msdn a NULL pszMore is an invalid argument (although optional !?) */
#  105|-> 	_tcsncpy(Path, testBasePathNoBackslash, ARRAYSIZE(Path));
#  106|   	status = PathCchAppend(Path, PATHCCH_MAX_CCH, NULL);
#  107|   	if (status != E_INVALIDARG)

Error: GCC_ANALYZER_WARNING (CWE-126): [#def918]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:116:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:28:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:42:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:46:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:60:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:64:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:70:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:70:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:78:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:82:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:88:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:88:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:95:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:96:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:105:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:107:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:116:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:116:9: danger: out-of-bounds read from byte 17 till byte 32767 but ‘testBasePathNoBackslash’ ends at byte 17
#  114|   
#  115|   	/* According to msdn cchPath must be > 0 and <= PATHCCH_MAX_CCH */
#  116|-> 	_tcsncpy(Path, testBasePathNoBackslash, ARRAYSIZE(Path));
#  117|   	status = PathCchAppend(Path, 0, testMorePathNoBackslash);
#  118|   	if (status != E_INVALIDARG)

Error: GCC_ANALYZER_WARNING (CWE-126): [#def919]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:125:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:28:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:34:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:42:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:46:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:52:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:60:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:64:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:70:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:70:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:78:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:82:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:88:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:88:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:95:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:96:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:105:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:107:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:116:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:118:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:125:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchAppend.c:125:9: danger: out-of-bounds read from byte 17 till byte 32767 but ‘testBasePathNoBackslash’ ends at byte 17
#  123|   		return -1;
#  124|   	}
#  125|-> 	_tcsncpy(Path, testBasePathNoBackslash, ARRAYSIZE(Path));
#  126|   	status = PathCchAppend(Path, PATHCCH_MAX_CCH + 1, testMorePathNoBackslash);
#  127|   	if (status != E_INVALIDARG)

Error: GCC_ANALYZER_WARNING (CWE-126): [#def920]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:35:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
#   33|   	/* Path with prefix (File Namespace) */
#   34|   
#   35|-> 	_tcsncpy(Path, testPathPrefixFileNamespace, ARRAYSIZE(Path));
#   36|   
#   37|   	status = PathCchStripPrefix(Path, sizeof(testPathPrefixFileNamespace) / sizeof(TCHAR));

Error: GCC_ANALYZER_WARNING (CWE-126): [#def921]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:54:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:39:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:45:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:45:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:54:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:54:9: danger: out-of-bounds read from byte 15 till byte 32767 but ‘testPathPrefixDeviceNamespace’ ends at byte 15
#   52|   	/* Path with prefix (Device Namespace) */
#   53|   
#   54|-> 	_tcsncpy(Path, testPathPrefixDeviceNamespace, ARRAYSIZE(Path));
#   55|   
#   56|   	status = PathCchStripPrefix(Path, ARRAYSIZE(testPathPrefixDeviceNamespace));

Error: GCC_ANALYZER_WARNING (CWE-126): [#def922]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:85:17: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:39:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:45:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:45:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:54:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:58:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:64:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:64:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:72:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:73:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:83:25: branch_true: following ‘true’ branch (when ‘i <= 4’)...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:85:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:85:17: danger: out-of-bounds read from byte 22 till byte 32767 but ‘testPathPrefixFileNamespace’ ends at byte 22
#   83|   	for (int i = 0; i < 5; i++)
#   84|   	{
#   85|-> 		_tcsncpy(Path, testPathPrefixFileNamespace, ARRAYSIZE(Path));
#   86|   		if (i == 4)
#   87|   			i = PATHCCH_MAX_CCH + 1;

Error: GCC_ANALYZER_WARNING (CWE-126): [#def923]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:99:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:39:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:45:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:45:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:54:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:58:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:64:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:64:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:72:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:73:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:83:25: branch_true: following ‘true’ branch (when ‘i <= 4’)...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:85:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:86:20: branch_false: following ‘false’ branch (when ‘i != 4’)...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:88:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:89:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:83:32: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathCchStripPrefix.c:99:9: danger: out-of-bounds read from byte 7 till byte 32767 but ‘testPathPrefixFileNamespaceMinimum’ ends at byte 7
#   97|   
#   98|   	/* Minimum Path that would get successfully stripped on windows */
#   99|-> 	_tcsncpy(Path, testPathPrefixFileNamespaceMinimum, ARRAYSIZE(Path));
#  100|   	size_t i = ARRAYSIZE(testPathPrefixFileNamespaceMinimum);
#  101|   	i = i - 1; /* include testing of a non-null terminated string */

Error: GCC_ANALYZER_WARNING (CWE-126): [#def924]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathIsUNCEx.c:23:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
#   21|   	/* Path is UNC */
#   22|   
#   23|-> 	_tcsncpy(Path, testPathUNC, ARRAYSIZE(Path));
#   24|   
#   25|   	status = PathIsUNCEx(Path, &Server);

Error: GCC_ANALYZER_WARNING (CWE-126): [#def925]
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathIsUNCEx.c:41:9: warning[-Wanalyzer-out-of-bounds]: buffer over-read
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathIsUNCEx.c:27:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathIsUNCEx.c:33:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathIsUNCEx.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathIsUNCEx.c:41:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/path/test/TestPathIsUNCEx.c:41:9: danger: out-of-bounds read from byte 19 till byte 32767 but ‘testPathNotUNC’ ends at byte 19
#   39|   	/* Path is not UNC */
#   40|   
#   41|-> 	_tcsncpy(Path, testPathNotUNC, ARRAYSIZE(Path));
#   42|   
#   43|   	status = PathIsUNCEx(Path, &Server);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def926]
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:719:9: warning[-Wanalyzer-malloc-leak]: leak of ‘baseSocket’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:568:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:575:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:575:12: branch_false: following ‘false’ branch (when ‘lpName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:578:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:578:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:581:41: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:583:12: branch_false: following ‘false’ branch (when ‘pNamedPipe’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:586:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:591:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:594:40: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:594:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:597:40: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:597:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:600:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:626:12: branch_true: following ‘true’ branch (when ‘serverfd == -1’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:628:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:630:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:633:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:649:20: branch_false: following ‘false’ branch (when ‘serverfd != -1’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:657:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:660:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:668:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:668:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:676:36: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:678:65: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:678:20: branch_false: following ‘false’ branch (when ‘baseSocket’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:681:42: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:681:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:687:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:690:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:719:9: danger: ‘baseSocket’ leaks here; was allocated at [(28)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/27)
#  717|   
#  718|   	// NOLINTNEXTLINE(clang-analyzer-unix.Malloc): ArrayList_Append takes ownership of baseSocket
#  719|-> 	ArrayList_Unlock(g_NamedPipeServerSockets);
#  720|   	return pNamedPipe;
#  721|   out:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def927]
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:727:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:557:8: enter_function: entry to ‘CreateNamedPipeA’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:568:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:575:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:575:12: branch_false: following ‘false’ branch (when ‘lpName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:578:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:578:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:581:41: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:583:12: branch_false: following ‘false’ branch (when ‘pNamedPipe’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:586:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:591:34: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:591:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:594:40: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:594:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:595:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:722:9: call_function: calling ‘NamedPipeCloseHandle’ from ‘CreateNamedPipeA’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:722:9: return_function: returning to ‘CreateNamedPipeA’ from ‘NamedPipeCloseHandle’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:724:12: branch_false: following ‘false’ branch (when ‘serverfd == -1’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:727:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:727:9: danger: ‘<unknown>’ leaks here; was allocated at [(10)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/9)
#  725|   		close(serverfd);
#  726|   
#  727|-> 	ArrayList_Unlock(g_NamedPipeServerSockets);
#  728|   	return INVALID_HANDLE_VALUE;
#  729|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def928]
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:727:9: warning[-Wanalyzer-malloc-leak]: leak of ‘pNamedPipe’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:557:8: enter_function: entry to ‘CreateNamedPipeA’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:568:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:575:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:575:12: branch_false: following ‘false’ branch (when ‘lpName’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:578:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:578:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:581:41: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:581:41: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:583:12: branch_false: following ‘false’ branch (when ‘pNamedPipe’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:586:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:591:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:594:40: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:594:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:595:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:722:9: call_function: calling ‘NamedPipeCloseHandle’ from ‘CreateNamedPipeA’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:722:9: return_function: returning to ‘CreateNamedPipeA’ from ‘NamedPipeCloseHandle’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:724:12: branch_false: following ‘false’ branch (when ‘serverfd == -1’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:727:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:727:9: danger: ‘pNamedPipe’ leaks here; was allocated at [(8)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/7)
#  725|   		close(serverfd);
#  726|   
#  727|-> 	ArrayList_Unlock(g_NamedPipeServerSockets);
#  728|   	return INVALID_HANDLE_VALUE;
#  729|   }

Error: GCC_ANALYZER_WARNING (CWE-775): [#def929]
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:767:20: warning[-Wanalyzer-fd-leak]: leak of file descriptor ‘((WINPR_NAMED_PIPE)*(void *)hNamedPipe).serverfd’
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:749:12: branch_false: following ‘false’ branch (when ‘lpOverlapped’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:756:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:756:12: branch_false: following ‘false’ branch (when ‘hNamedPipe’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:761:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:761:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:763:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/pipe.c:767:20: danger: ‘((WINPR_NAMED_PIPE)*(void *)hNamedPipe).serverfd’ leaks here
#  765|   		status = accept(pNamedPipe->serverfd, (struct sockaddr*)&s, &length);
#  766|   
#  767|-> 		if (status < 0)
#  768|   		{
#  769|   			WLog_ERR(TAG, "ConnectNamedPipe: accept error");

Error: COMPILER_WARNING (CWE-590): [#def930]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c: scope_hint: In function ‘named_pipe_client_thread’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:87:15: warning[-Wfree-nonheap-object]: ‘CloseHandle’ called on a pointer to an unallocated object ‘-1B’
#   87 |         (void)CloseHandle(hNamedPipe);
#      |               ^
#   85|   	free(lpReadBuffer);
#   86|   	free(lpWriteBuffer);
#   87|-> 	(void)CloseHandle(hNamedPipe);
#   88|   
#   89|   	if (!fSuccess)

Error: COMPILER_WARNING (CWE-590): [#def931]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:87:15: warning[-Wfree-nonheap-object]: ‘CloseHandle’ called on a pointer to an unallocated object ‘18446744073709551615’
#   85|   	free(lpReadBuffer);
#   86|   	free(lpWriteBuffer);
#   87|-> 	(void)CloseHandle(hNamedPipe);
#   88|   
#   89|   	if (!fSuccess)

Error: COMPILER_WARNING (CWE-590): [#def932]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c: scope_hint: In function ‘named_pipe_server_thread’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:182:15: warning[-Wfree-nonheap-object]: ‘CloseHandle’ called on a pointer to an unallocated object ‘-1B’
#  182 |         (void)CloseHandle(hNamedPipe);
#      |               ^
#  180|   	free(lpReadBuffer);
#  181|   	free(lpWriteBuffer);
#  182|-> 	(void)CloseHandle(hNamedPipe);
#  183|   
#  184|   	if (!fSuccess)

Error: COMPILER_WARNING (CWE-590): [#def933]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:182:15: warning[-Wfree-nonheap-object]: ‘CloseHandle’ called on a pointer to an unallocated object ‘18446744073709551615’
#  180|   	free(lpReadBuffer);
#  181|   	free(lpWriteBuffer);
#  182|-> 	(void)CloseHandle(hNamedPipe);
#  183|   
#  184|   	if (!fSuccess)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def934]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:219:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: danger: ‘<unknown>’ leaks here; was allocated at [(9)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/8)
#  458|   		testFailed = TRUE;
#  459|   
#  460|-> 	return 0;
#  461|   }
#  462|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def935]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: warning[-Wanalyzer-malloc-leak]: leak of ‘clients[0]’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:219:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:221:20: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: danger: ‘clients[0]’ leaks here; was allocated at [(21)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/20)
#  458|   		testFailed = TRUE;
#  459|   
#  460|-> 	return 0;
#  461|   }
#  462|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def936]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: warning[-Wanalyzer-malloc-leak]: leak of ‘clients[1]’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:219:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:221:20: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: danger: ‘clients[1]’ leaks here; was allocated at [(21)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/20)
#  458|   		testFailed = TRUE;
#  459|   
#  460|-> 	return 0;
#  461|   }
#  462|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def937]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: warning[-Wanalyzer-malloc-leak]: leak of ‘clients[2]’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:219:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:221:20: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: danger: ‘clients[2]’ leaks here; was allocated at [(21)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/20)
#  458|   		testFailed = TRUE;
#  459|   
#  460|-> 	return 0;
#  461|   }
#  462|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def938]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: warning[-Wanalyzer-malloc-leak]: leak of ‘clients[3]’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:219:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:221:20: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: danger: ‘clients[3]’ leaks here; was allocated at [(21)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/20)
#  458|   		testFailed = TRUE;
#  459|   
#  460|-> 	return 0;
#  461|   }
#  462|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def939]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: warning[-Wanalyzer-malloc-leak]: leak of ‘clients[4]’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:36: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:205:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:203:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:219:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:221:20: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:228:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:235:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:242:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:217:39: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:270:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:251:25: branch_true: following ‘true’ branch (when ‘i != 16’)...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:254:35: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:460:16: danger: ‘clients[4]’ leaks here; was allocated at [(21)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/20)
#  458|   		testFailed = TRUE;
#  459|   
#  460|-> 	return 0;
#  461|   }
#  462|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def940]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:473:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateNamedPipeA(0, 0, 0, 0, 0, 0, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:472:17: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:473:12: danger: ‘CreateNamedPipeA(0, 0, 0, 0, 0, 0, 0, 0)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/6/codeFlows/0/threadFlows/0/locations/0)
#  471|   	/* Verify that CreateNamedPipe returns INVALID_HANDLE_VALUE on failure */
#  472|   	hPipe = CreateNamedPipeA(NULL, 0, 0, 0, 0, 0, 0, NULL);
#  473|-> 	if (hPipe != INVALID_HANDLE_VALUE)
#  474|   	{
#  475|   		printf("CreateNamedPipe unexpectedly returned %p instead of INVALID_HANDLE_VALUE (%p)\n",

Error: GCC_ANALYZER_WARNING (CWE-401): [#def941]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:475:17: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateNamedPipeA(0, 0, 0, 0, 0, 0, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:472:17: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:473:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:475:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:475:17: danger: ‘CreateNamedPipeA(0, 0, 0, 0, 0, 0, 0, 0)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/7/codeFlows/0/threadFlows/0/locations/0)
#  473|   	if (hPipe != INVALID_HANDLE_VALUE)
#  474|   	{
#  475|-> 		printf("CreateNamedPipe unexpectedly returned %p instead of INVALID_HANDLE_VALUE (%p)\n",
#  476|   		       hPipe, INVALID_HANDLE_VALUE);
#  477|   		return -1;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def942]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:493:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &named_pipe_single_thread, 0, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:473:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:481:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:483:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:488:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:488:30: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:488:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:493:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:493:12: danger: ‘CreateThread(0, 0, &named_pipe_single_thread, 0, 0, 0)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/8/codeFlows/0/threadFlows/0/locations/4)
#  491|   		return -1;
#  492|   	}
#  493|-> 	if (!(ClientThread = CreateThread(NULL, 0, named_pipe_client_thread, NULL, 0, NULL)))
#  494|   	{
#  495|   		printf("CreateThread (ClientThread) failure: (%" PRIu32 ")\n", GetLastError());

Error: GCC_ANALYZER_WARNING (CWE-401): [#def943]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:498:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &named_pipe_client_thread, 0, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:473:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:481:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:483:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:488:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:488:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:493:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:493:30: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:493:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:498:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:498:12: danger: ‘CreateThread(0, 0, &named_pipe_client_thread, 0, 0, 0)’ leaks here; was allocated at [(7)](sarif:/runs/0/results/9/codeFlows/0/threadFlows/0/locations/6)
#  496|   		return -1;
#  497|   	}
#  498|-> 	if (!(ServerThread = CreateThread(NULL, 0, named_pipe_server_thread, NULL, 0, NULL)))
#  499|   	{
#  500|   		printf("CreateThread (ServerThread) failure: (%" PRIu32 ")\n", GetLastError());

Error: GCC_ANALYZER_WARNING (CWE-401): [#def944]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:498:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &named_pipe_single_thread, 0, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:473:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:481:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:483:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:488:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:488:30: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:488:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:493:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:493:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:498:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipe.c:498:12: danger: ‘CreateThread(0, 0, &named_pipe_single_thread, 0, 0, 0)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/10/codeFlows/0/threadFlows/0/locations/4)
#  496|   		return -1;
#  497|   	}
#  498|-> 	if (!(ServerThread = CreateThread(NULL, 0, named_pipe_server_thread, NULL, 0, NULL)))
#  499|   	{
#  500|   		printf("CreateThread (ServerThread) failure: (%" PRIu32 ")\n", GetLastError());

Error: GCC_ANALYZER_WARNING (CWE-401): [#def945]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:60:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileA(lpszPipeName, 3221225472, 0, 0, 3, 1073741824, 0)’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:41:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:48:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:48:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:53:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:57:22: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:60:12: danger: ‘CreateFileA(lpszPipeName, 3221225472, 0, 0, 3, 1073741824, 0)’ leaks here; was allocated at [(5)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/4)
#   58|   	                        FILE_FLAG_OVERLAPPED, NULL);
#   59|   
#   60|-> 	if (hNamedPipe == INVALID_HANDLE_VALUE)
#   61|   	{
#   62|   		printf("client: Named Pipe CreateFile failure: %" PRIu32 "\n", GetLastError());

Error: GCC_ANALYZER_WARNING (CWE-401): [#def946]
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:187:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateNamedPipeA(lpszPipeName, 1073741827, 0, 255, 32, 32, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:172:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:178:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:183:13: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pipe/test/TestPipeCreateNamedPipeOverlapped.c:187:12: danger: ‘CreateNamedPipeA(lpszPipeName, 1073741827, 0, 255, 32, 32, 0, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#  185|   	                    PIPE_BUFFER_SIZE, PIPE_BUFFER_SIZE, 0, NULL);
#  186|   
#  187|-> 	if (hNamedPipe == INVALID_HANDLE_VALUE)
#  188|   	{
#  189|   		printf("server: CreateNamedPipe failure: %" PRIu32 "\n", GetLastError());

Error: GCC_ANALYZER_WARNING (CWE-401): [#def947]
FreeRDP-3.12.0/winpr/libwinpr/pool/pool.c:221:22: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &thread_pool_work_func,  ptpp, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/pool/pool.c:215:16: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pool/pool.c:217:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pool/pool.c:217:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pool/pool.c:218:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pool/pool.c:221:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pool/pool.c:221:22: danger: ‘CreateThread(0, 0, &thread_pool_work_func,  ptpp, 0, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#  219|   			goto fail;
#  220|   
#  221|-> 		if (!ArrayList_Append(ptpp->Threads, thread))
#  222|   		{
#  223|   			(void)CloseHandle(thread);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def948]
FreeRDP-3.12.0/winpr/libwinpr/pool/work.c:156:1: warning[-Wanalyzer-malloc-leak]: leak of ‘callbackInstance’
FreeRDP-3.12.0/winpr/libwinpr/pool/work.c:146:51: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/pool/work.c:148:12: branch_true: following ‘true’ branch (when ‘callbackInstance’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/pool/work.c:150:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pool/work.c:152:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/pool/work.c:156:1: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/pool/work.c:156:1: danger: ‘callbackInstance’ leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#  154|   	}
#  155|   	// NOLINTNEXTLINE(clang-analyzer-unix.Malloc): Queue_Enqueue takes ownership of callbackInstance
#  156|-> }
#  157|   
#  158|   BOOL winpr_TrySubmitThreadpoolCallback(WINPR_ATTR_UNUSED PTP_SIMPLE_CALLBACK pfns,

Error: GCC_ANALYZER_WARNING (CWE-401): [#def949]
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2908:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2871:20: enter_function: entry to ‘PCSC_SCardWriteCacheA’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2876:34: call_function: calling ‘PCSC_GetCardContextData’ from ‘PCSC_SCardWriteCacheA’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2876:34: return_function: returning to ‘PCSC_SCardWriteCacheA’ from ‘PCSC_GetCardContextData’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2879:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2882:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2882:14: call_function: calling ‘card_id_and_name_a’ from ‘PCSC_SCardWriteCacheA’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2882:14: return_function: returning to ‘PCSC_SCardWriteCacheA’ from ‘card_id_and_name_a’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2884:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2887:16: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2887:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2888:12: branch_false: following ‘false’ branch (when ‘data’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2893:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2894:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2900:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2908:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2908:12: danger: ‘data’ leaks here; was allocated at [(18)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/17)
# 2906|   	free(id);
# 2907|   
# 2908|-> 	if (!rc)
# 2909|   	{
# 2910|   		pcsc_cache_item_free(data);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def950]
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2954:12: warning[-Wanalyzer-malloc-leak]: leak of ‘data’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2918:20: enter_function: entry to ‘PCSC_SCardWriteCacheW’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2923:34: call_function: calling ‘PCSC_GetCardContextData’ from ‘PCSC_SCardWriteCacheW’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2923:34: return_function: returning to ‘PCSC_SCardWriteCacheW’ from ‘PCSC_GetCardContextData’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2925:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2928:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2928:14: call_function: calling ‘card_id_and_name_w’ from ‘PCSC_SCardWriteCacheW’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2928:14: return_function: returning to ‘PCSC_SCardWriteCacheW’ from ‘card_id_and_name_w’
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2930:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2933:16: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2933:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2934:12: branch_false: following ‘false’ branch (when ‘data’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2939:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2940:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2946:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2954:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/smartcard/smartcard_pcsc.c:2954:12: danger: ‘data’ leaks here; was allocated at [(23)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/22)
# 2952|   	free(id);
# 2953|   
# 2954|-> 	if (!rc)
# 2955|   	{
# 2956|   		pcsc_cache_item_free(data);

Error: COMPILER_WARNING: [#def951]
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:675:29: note[note]: length computed here
#  673|   {
#  674|   	const size_t dlen = strnlen(dst, dstSize);
#  675|-> 	const size_t slen = strlen(src);
#  676|   	if (dlen + slen >= dstSize)
#  677|   		return FALSE;

Error: COMPILER_WARNING: [#def952]
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:678:14: warning[-Wstringop-overflow=]: ‘strncat’ specified bound 1 equals source length
#  676|   	if (dlen + slen >= dstSize)
#  677|   		return FALSE;
#  678|-> 	if (!strncat(dst, src, slen))
#  679|   		return FALSE;
#  680|   	return TRUE;

Error: COMPILER_WARNING: [#def953]
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:678:14: warning[-Wstringop-overflow=]: ‘strncat’ specified bound depends on the length of the source argument
#  676|   	if (dlen + slen >= dstSize)
#  677|   		return FALSE;
#  678|-> 	if (!strncat(dst, src, slen))
#  679|   		return FALSE;
#  680|   	return TRUE;

Error: GCC_ANALYZER_WARNING (CWE-476): [#def954]
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1304:17: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘kerberos_ContextNew(sspi_SecureHandleGetLowerPointer(phCredential))’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1257:34: enter_function: entry to ‘kerberos_AcceptSecurityContext’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1289:12: branch_true: following ‘true’ branch (when ‘pInput’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1290:32: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1291:12: branch_false: following ‘false’ branch (when ‘pOutput’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1294:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1294:12: branch_false: following ‘false’ branch (when ‘input_buffer’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1297:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1297:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1300:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1300:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1303:27: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1303:27: call_function: calling ‘kerberos_ContextNew’ from ‘kerberos_AcceptSecurityContext’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1303:27: return_function: returning to ‘kerberos_AcceptSecurityContext’ from ‘kerberos_ContextNew’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Kerberos/kerberos.c:1304:17: danger: dereference of NULL ‘kerberos_ContextNew(sspi_SecureHandleGetLowerPointer(phCredential))’
# 1302|   		isNewContext = TRUE;
# 1303|   		context = kerberos_ContextNew(credentials);
# 1304|-> 		context->acceptor = TRUE;
# 1305|   
# 1306|   		if (sspi_gss_oid_compare(&oid, &kerberos_u2u_OID))

Error: COMPILER_WARNING (CWE-1164): [#def955]
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_av_pairs.c:52:20: warning[-Wunused-function]: ‘get_av_pair_string’ defined but not used
#   52 | static const char* get_av_pair_string(UINT16 pair)
#      |                    ^~~~~~~~~~~~~~~~~~
#   50|   }
#   51|   
#   52|-> static const char* get_av_pair_string(UINT16 pair)
#   53|   {
#   54|   	switch (pair)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def956]
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1092:52: warning[-Wanalyzer-malloc-leak]: leak of ‘*credentials.identity.User’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:17: enter_function: entry to ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:953:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:956:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:956:14: call_function: calling ‘ntlm_read_message_header’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:956:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_header’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:956:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:959:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:959:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:959:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:959:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:963:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:963:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:963:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:963:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:967:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:967:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:967:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:967:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:970:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:970:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:970:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:970:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:973:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:973:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:973:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:973:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:976:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:976:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:976:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:976:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:981:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:981:14: call_function: calling ‘ntlm_read_negotiate_flags’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:981:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_negotiate_flags’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:981:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:985:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:988:13: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:991:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:991:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:997:31: call_function: inlined call to ‘Stream_GetPosition’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1000:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1003:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1003:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1006:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1006:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1009:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1009:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1013:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1013:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1017:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1046:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1050:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1062:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1065:9: call_function: inlined call to ‘Stream_Buffer’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1069:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1084:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1084:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1086:55: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1086:55: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1088:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1091:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1092:52: danger: ‘*credentials.identity.User’ leaks here; was allocated at [(219)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/218)
# 1090|   
# 1091|   		CopyMemory(credentials->identity.User, message->UserName.Buffer, message->UserName.Len);
# 1092|-> 		credentials->identity.UserLength = message->UserName.Len / 2;
# 1093|   	}
# 1094|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def957]
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1104:54: warning[-Wanalyzer-malloc-leak]: leak of ‘*credentials.identity.Domain’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:927:17: enter_function: entry to ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:953:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:956:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:956:14: call_function: calling ‘ntlm_read_message_header’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:956:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_header’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:956:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:959:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:959:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:959:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:959:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:963:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:963:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:963:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:963:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:967:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:967:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:967:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:967:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:970:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:970:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:970:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:970:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:973:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:973:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:973:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:973:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:976:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:976:14: call_function: calling ‘ntlm_read_message_fields’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:976:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_message_fields’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:976:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:981:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:981:14: call_function: calling ‘ntlm_read_negotiate_flags’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:981:14: return_function: returning to ‘ntlm_read_AuthenticateMessage’ from ‘ntlm_read_negotiate_flags’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:981:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:985:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:988:13: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:991:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:991:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:997:31: call_function: inlined call to ‘Stream_GetPosition’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1000:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1003:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1003:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1006:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1006:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1009:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1009:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1013:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1013:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1017:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1046:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1050:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1062:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1065:9: call_function: inlined call to ‘Stream_Buffer’ from ‘ntlm_read_AuthenticateMessage’
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1069:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1084:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1095:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1097:57: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1097:57: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1099:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1102:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/NTLM/ntlm_message.c:1104:54: danger: ‘*credentials.identity.Domain’ leaks here; was allocated at [(219)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/218)
# 1102|   		CopyMemory(credentials->identity.Domain, message->DomainName.Buffer,
# 1103|   		           message->DomainName.Len);
# 1104|-> 		credentials->identity.DomainLength = message->DomainName.Len / 2;
# 1105|   	}
# 1106|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def958]
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:139:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘credentials’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:127:34: enter_function: entry to ‘schannel_AcquireCredentialsHandleW’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:138:31: call_function: inlined call to ‘schannel_CredentialsNew’ from ‘schannel_AcquireCredentialsHandleW’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:139:17: danger: ‘credentials’ could be NULL: unchecked value from [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#  137|   		SCHANNEL_CRED* cred = NULL;
#  138|   		credentials = schannel_CredentialsNew();
#  139|-> 		credentials->fCredentialUse = fCredentialUse;
#  140|   		cred = (SCHANNEL_CRED*)pAuthData;
#  141|   

Error: GCC_ANALYZER_WARNING (CWE-476): [#def959]
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:154:17: warning[-Wanalyzer-possible-null-dereference]: dereference of possibly-NULL ‘credentials’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:127:34: enter_function: entry to ‘schannel_AcquireCredentialsHandleW’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:135:12: branch_false: following ‘false’ branch (when ‘fCredentialUse != 2’)...
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:151:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:151:17: branch_true: following ‘true’ branch (when ‘fCredentialUse == 1’)...
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:153:31: call_function: inlined call to ‘schannel_CredentialsNew’ from ‘schannel_AcquireCredentialsHandleW’
FreeRDP-3.12.0/winpr/libwinpr/sspi/Schannel/schannel.c:154:17: danger: ‘credentials’ could be NULL: unchecked value from [(7)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/6)
#  152|   	{
#  153|   		credentials = schannel_CredentialsNew();
#  154|-> 		credentials->fCredentialUse = fCredentialUse;
#  155|   		sspi_SecureHandleSetLowerPointer(phCredential, (void*)credentials);
#  156|   		sspi_SecureHandleSetUpperPointer(phCredential, (void*)SCHANNEL_PACKAGE_NAME);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def960]
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1087:1: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1123:34: enter_function: entry to ‘winpr_EnumerateSecurityPackagesA’
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1129:27: call_function: calling ‘sspi_ContextBufferAlloc’ from ‘winpr_EnumerateSecurityPackagesA’
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1129:27: return_function: returning to ‘winpr_EnumerateSecurityPackagesA’ from ‘sspi_ContextBufferAlloc’
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1133:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1136:32: branch_true: following ‘true’ branch (when ‘index != 5’)...
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1138:53: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1142:44: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1145:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1145:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1145:21: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1147:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/sspi/sspi_winpr.c:1147:25: call_function: calling ‘sspi_ContextBufferFree’ from ‘winpr_EnumerateSecurityPackagesA’
# 1085|   		}
# 1086|   	}
# 1087|-> }
# 1088|   
# 1089|   /**

Error: GCC_ANALYZER_WARNING (CWE-401): [#def961]
FreeRDP-3.12.0/winpr/libwinpr/synch/../handle/handle.h:141:9: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateSemaphoreW(lpSemaphoreAttributes,  lInitialCount,  lMaximumCount, 0)’
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:196:8: enter_function: entry to ‘CreateSemaphoreA’
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:199:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:199:16: call_function: calling ‘CreateSemaphoreW’ from ‘CreateSemaphoreA’
#  139|   
#  140|   	hdl->Type = _type;
#  141|-> 	hdl->Mode = _mode;
#  142|   }
#  143|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def962]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:276:20: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventW(lpEventAttributes,  manual,  initial,  lpName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:332:8: enter_function: entry to ‘CreateEventExW’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:348:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:348:16: call_function: calling ‘CreateEventW’ from ‘CreateEventExW’
#  274|   	{
#  275|   		name = ConvertWCharToUtf8Alloc(lpName, NULL);
#  276|-> 		if (!name)
#  277|   			return NULL;
#  278|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def963]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:281:9: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventW(lpEventAttributes,  manual,  initial,  lpName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:332:8: enter_function: entry to ‘CreateEventExW’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:348:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:348:16: call_function: calling ‘CreateEventW’ from ‘CreateEventExW’
#  279|   
#  280|   	handle = CreateEventA(lpEventAttributes, bManualReset, bInitialState, name);
#  281|-> 	free(name);
#  282|   	return handle;
#  283|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def964]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:293:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes,  bManualReset,  bInitialState,  name)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:267:8: enter_function: entry to ‘CreateEventW’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:273:12: branch_false: following ‘false’ branch (when ‘lpName’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:280:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:280:18: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:280:18: call_function: calling ‘CreateEventA’ from ‘CreateEventW’
#  291|   		WLog_WARN(TAG, "[%s] does not support lpEventAttributes", lpName);
#  292|   
#  293|-> 	if (!event)
#  294|   		return NULL;
#  295|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def965]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:293:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes,  manual,  initial,  lpName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:351:8: enter_function: entry to ‘CreateEventExA’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:367:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:367:16: call_function: calling ‘CreateEventA’ from ‘CreateEventExA’
#  291|   		WLog_WARN(TAG, "[%s] does not support lpEventAttributes", lpName);
#  292|   
#  293|-> 	if (!event)
#  294|   		return NULL;
#  295|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def966]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:309:14: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes,  bManualReset,  bInitialState,  name)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:267:8: enter_function: entry to ‘CreateEventW’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:273:12: branch_false: following ‘false’ branch (when ‘lpName’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:280:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:280:18: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:280:18: call_function: calling ‘CreateEventA’ from ‘CreateEventW’
#  307|   		WLog_ERR(TAG, "auto-reset events not yet implemented");
#  308|   
#  309|-> 	if (!winpr_event_init(&event->impl))
#  310|   		goto fail;
#  311|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def967]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:309:14: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventA(lpEventAttributes,  manual,  initial,  lpName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:351:8: enter_function: entry to ‘CreateEventExA’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:367:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:367:16: call_function: calling ‘CreateEventA’ from ‘CreateEventExA’
#  307|   		WLog_ERR(TAG, "auto-reset events not yet implemented");
#  308|   
#  309|-> 	if (!winpr_event_init(&event->impl))
#  310|   		goto fail;
#  311|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def968]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:309:14: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateEventW(lpEventAttributes,  manual,  initial,  lpName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:332:8: enter_function: entry to ‘CreateEventExW’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:348:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:348:16: call_function: calling ‘CreateEventW’ from ‘CreateEventExW’
#  307|   		WLog_ERR(TAG, "auto-reset events not yet implemented");
#  308|   
#  309|-> 	if (!winpr_event_init(&event->impl))
#  310|   		goto fail;
#  311|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def969]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:447:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileDescriptorEventW(lpEventAttributes,  bManualReset,  bInitialState,  FileDescriptor,  mode)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:453:8: enter_function: entry to ‘CreateFileDescriptorEventA’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:456:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:456:16: call_function: calling ‘CreateFileDescriptorEventW’ from ‘CreateFileDescriptorEventA’
#  445|   	}
#  446|   
#  447|-> 	return handle;
#  448|   #else
#  449|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def970]
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:447:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateFileDescriptorEventW(lpEventAttributes,  bManualReset,  bInitialState, (int)(long int)pObject, 1)’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:463:8: enter_function: entry to ‘CreateWaitObjectEvent’
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:467:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/event.c:467:16: call_function: calling ‘CreateFileDescriptorEventW’ from ‘CreateWaitObjectEvent’
#  445|   	}
#  446|   
#  447|-> 	return handle;
#  448|   #else
#  449|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def971]
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:130:20: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexW(lpMutexAttributes,  initial,  lpName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:184:8: enter_function: entry to ‘CreateMutexExW’
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:197:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:197:16: call_function: calling ‘CreateMutexW’ from ‘CreateMutexExW’
#  128|   	{
#  129|   		name = ConvertWCharToUtf8Alloc(lpName, NULL);
#  130|-> 		if (!name)
#  131|   			return NULL;
#  132|   	}

Error: GCC_ANALYZER_WARNING (CWE-401): [#def972]
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:135:9: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexW(lpMutexAttributes,  initial,  lpName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:184:8: enter_function: entry to ‘CreateMutexExW’
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:197:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:197:16: call_function: calling ‘CreateMutexW’ from ‘CreateMutexExW’
#  133|   
#  134|   	handle = CreateMutexA(lpMutexAttributes, bInitialOwner, name);
#  135|-> 	free(name);
#  136|   	return handle;
#  137|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def973]
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:165:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexA(lpMutexAttributes,  bInitialOwner,  name)’
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:122:8: enter_function: entry to ‘CreateMutexW’
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:127:12: branch_false: following ‘false’ branch (when ‘lpName’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:134:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:134:18: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:134:18: call_function: calling ‘CreateMutexA’ from ‘CreateMutexW’
#  163|   	}
#  164|   
#  165|-> 	return handle;
#  166|   }
#  167|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def974]
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:165:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateMutexA(lpMutexAttributes,  initial,  lpName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:168:8: enter_function: entry to ‘CreateMutexExA’
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:181:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/mutex.c:181:16: call_function: calling ‘CreateMutexA’ from ‘CreateMutexExA’
#  163|   	}
#  164|   
#  165|-> 	return handle;
#  166|   }
#  167|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def975]
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:137:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateSemaphoreW(lpSemaphoreAttributes,  lInitialCount,  lMaximumCount, 0)’
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:196:8: enter_function: entry to ‘CreateSemaphoreA’
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:199:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:199:16: call_function: calling ‘CreateSemaphoreW’ from ‘CreateSemaphoreA’
#  135|   	semaphore = (WINPR_SEMAPHORE*)calloc(1, sizeof(WINPR_SEMAPHORE));
#  136|   
#  137|-> 	if (!semaphore)
#  138|   		return NULL;
#  139|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def976]
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:148:17: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateSemaphoreW(lpSemaphoreAttributes,  lInitialCount,  lMaximumCount, 0)’
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:196:8: enter_function: entry to ‘CreateSemaphoreA’
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:199:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/semaphore.c:199:16: call_function: calling ‘CreateSemaphoreW’ from ‘CreateSemaphoreA’
#  146|   	if (pipe(semaphore->pipe_fd) < 0)
#  147|   	{
#  148|-> 		WLog_ERR(TAG, "failed to create semaphore");
#  149|   		free(semaphore);
#  150|   		return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def977]
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:176:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:187:5: enter_function: entry to ‘TestSynchBarrier’
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:206:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:215:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:215:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:224:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:224:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:235:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchBarrier.c:235:14: call_function: calling ‘TestSynchBarrierWithFlags’ from ‘TestSynchBarrier’
#  174|   	rc = TRUE;
#  175|   fail:
#  176|-> 	free((void*)threads);
#  177|   	DeleteSynchronizationBarrier(&gBarrier);
#  178|   	if (gErrorCount > 0)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def978]
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:314:16: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:135:16: branch_true: following ‘true’ branch (when ‘dwSpinCount != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:137:39: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:143:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:151:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:153:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:156:25: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:169:16: branch_true: following ‘true’ branch (when ‘i != 10’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:171:21: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:171:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:177:20: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:177:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:179:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:190:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:169:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:197:16: branch_true: following ‘true’ branch (when ‘i != -1’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:199:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:200:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:206:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:206:46: branch_true: following ‘true’ branch (when ‘i != 0’)...
 branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:206:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:222:12: branch_false: following ‘false’ branch (when ‘hThreads’ is non-NULL)...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:228:25: branch_true: following ‘true’ branch (when ‘j != 4’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:230:31: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:238:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:240:39: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:241:35: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:240:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:238:57: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:238:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:240:39: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:240:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:238:57: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:238:33: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:249:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:252:33: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:254:57: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:314:16: danger: ‘<unknown>’ leaks here; was allocated at [(35)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/34)
#  312|   
#  313|   	*pbThreadTerminated = TRUE; /* requ. for winpr issue, see below */
#  314|-> 	return 0;
#  315|   
#  316|   fail:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def979]
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:314:16: warning[-Wanalyzer-malloc-leak]: leak of ‘hThreads’
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:135:16: branch_true: following ‘true’ branch (when ‘dwSpinCount != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:137:39: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:143:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:151:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:153:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:156:25: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:169:16: branch_true: following ‘true’ branch (when ‘i != 10’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:171:21: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:171:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:177:20: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:177:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:179:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:190:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:169:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:197:16: branch_true: following ‘true’ branch (when ‘i != -1’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:199:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:200:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:206:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:206:46: branch_true: following ‘true’ branch (when ‘i != 0’)...
 branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:206:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:221:29: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:222:12: branch_false: following ‘false’ branch (when ‘hThreads’ is non-NULL)...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:228:25: branch_true: following ‘true’ branch (when ‘j != 4’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:230:31: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:240:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:243:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:314:16: danger: ‘hThreads’ leaks here; was allocated at [(23)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/22)
#  312|   
#  313|   	*pbThreadTerminated = TRUE; /* requ. for winpr issue, see below */
#  314|-> 	return 0;
#  315|   
#  316|   fail:

Error: GCC_ANALYZER_WARNING (CWE-401): [#def980]
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:352:21: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &TestSynchCritical_Main, & bThreadTerminated, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:336:25: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:336:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:350:27: branch_true: following ‘true’ branch (when ‘i != 400’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:352:21: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchCritical.c:352:21: danger: ‘CreateThread(0, 0, &TestSynchCritical_Main, & bThreadTerminated, 0, 0)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/0)
#  350|   	for (DWORD i = 0; i < dwDeadLockDetectionTimeMs; i += 10)
#  351|   	{
#  352|-> 		if (bThreadTerminated)
#  353|   			break;
#  354|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def981]
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:165:16: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:92:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:104:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:111:27: branch_true: following ‘true’ branch (when ‘dwCreatedThreads != 100’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:113:37: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:113:37: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:113:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:119:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:111:27: branch_true: following ‘true’ branch (when ‘dwCreatedThreads != 100’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:113:37: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:113:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:119:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:125:27: branch_true: following ‘true’ branch (when ‘i != 100’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:127:21: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:160:27: branch_true: following ‘true’ branch (when ‘i < dwCreatedThreads’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:162:23: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchInit.c:165:16: danger: ‘<unknown>’ leaks here; was allocated at [(13)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/12)
#  163|   	}
#  164|   
#  165|-> 	return (result ? 0 : 1);
#  166|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def982]
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchTimerQueue.c:79:20: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateTimerQueue()’
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchTimerQueue.c:62:23: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchTimerQueue.c:64:12: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchTimerQueue.c:70:31: branch_true: following ‘true’ branch (when ‘index != 5’)...
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchTimerQueue.c:72:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/test/TestSynchTimerQueue.c:79:20: danger: ‘CreateTimerQueue()’ leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#   77|   		apcData[index].MaxFireCount = FIRE_COUNT;
#   78|   
#   79|-> 		if (!(apcData[index].CompletionEvent = CreateEvent(NULL, TRUE, FALSE, NULL)))
#   80|   		{
#   81|   			printf("Failed to create apcData[%" PRIu32 "] event (%" PRIu32 ")\n", index,

Error: GCC_ANALYZER_WARNING (CWE-401): [#def983]
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:369:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateWaitableTimerA(lpTimerAttributes,  bManualReset,  lpTimerName)’
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:396:8: enter_function: entry to ‘CreateWaitableTimerExA’
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:405:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:405:16: call_function: calling ‘CreateWaitableTimerA’ from ‘CreateWaitableTimerExA’
#  367|   	}
#  368|   
#  369|-> 	return handle;
#  370|   
#  371|   #if defined(TIMER_IMPL_DISPATCH) || defined(TIMER_IMPL_POSIX)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def984]
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:369:16: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateWaitableTimerA(lpTimerAttributes,  bManualReset,  name)’
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:378:8: enter_function: entry to ‘CreateWaitableTimerW’
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:384:12: branch_false: following ‘false’ branch (when ‘lpTimerName’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:391:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:391:18: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/synch/timer.c:391:18: call_function: calling ‘CreateWaitableTimerA’ from ‘CreateWaitableTimerW’
#  367|   	}
#  368|   
#  369|-> 	return handle;
#  370|   
#  371|   #if defined(TIMER_IMPL_DISPATCH) || defined(TIMER_IMPL_POSIX)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def985]
FreeRDP-3.12.0/winpr/libwinpr/thread/process.c:111:13: warning[-Wanalyzer-malloc-leak]: leak of ‘FindApplicationPath(*pArgs)’
FreeRDP-3.12.0/winpr/libwinpr/thread/process.c:448:6: enter_function: entry to ‘CreateProcessWithTokenA’
FreeRDP-3.12.0/winpr/libwinpr/thread/process.c:454:16: call_function: calling ‘CreateProcessExA’ from ‘CreateProcessWithTokenA’
#  109|   		return NULL;
#  110|   
#  111|-> 	if (application[0] == '/')
#  112|   		return _strdup(application);
#  113|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def986]
FreeRDP-3.12.0/winpr/libwinpr/thread/test/TestThreadExitThread.c:30:20: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &thread_func, 0, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/thread/test/TestThreadExitThread.c:26:25: branch_true: following ‘true’ branch (when ‘i != 100’)...
FreeRDP-3.12.0/winpr/libwinpr/thread/test/TestThreadExitThread.c:28:26: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/thread/test/TestThreadExitThread.c:28:26: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/thread/test/TestThreadExitThread.c:30:20: danger: ‘CreateThread(0, 0, &thread_func, 0, 0, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#   28|   		thread = CreateThread(NULL, 0, thread_func, NULL, 0, NULL);
#   29|   
#   30|-> 		if (thread == INVALID_HANDLE_VALUE)
#   31|   		{
#   32|   			(void)fprintf(stderr, "Got an invalid thread!\n");

Error: COMPILER_WARNING (CWE-1164): [#def987]
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:68:29: warning[-Wunused-function]: ‘tz_entry_clone’ defined but not used
#   68 | static TimeZoneNameMapEntry tz_entry_clone(const TimeZoneNameMapEntry* entry)
#      |                             ^~~~~~~~~~~~~~
#   66|   }

#   67|   

#   68|-> static TimeZoneNameMapEntry tz_entry_clone(const TimeZoneNameMapEntry* entry)

#   69|   {

#   70|   	TimeZoneNameMapEntry clone = { 0 };


Error: GCC_ANALYZER_WARNING (CWE-401): [#def988]
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:137:31: warning[-Wanalyzer-malloc-leak]: leak of ‘tz_get_object_str(json,  pos, "Id")’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:225:22: enter_function: entry to ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:239:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: call_function: calling ‘load_timezones_from_file’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: return_function: returning to ‘load_timezones’ from ‘load_timezones_from_file’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:246:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:255:35: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:256:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:261:38: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: call_function: calling ‘reallocate_context’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: return_function: returning to ‘load_timezones’ from ‘reallocate_context’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:265:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:267:45: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:268:30: call_function: calling ‘tz_parse_json_entry’ from ‘load_timezones’
#  135|   

#  136|   	entry->Id = tz_get_object_str(json, pos, "Id");

#  137|-> 	entry->StandardName = tz_get_object_str(json, pos, "StandardName");

#  138|   	entry->DisplayName = tz_get_object_str(json, pos, "DisplayName");

#  139|   	entry->DaylightName = tz_get_object_str(json, pos, "DaylightName");


Error: GCC_ANALYZER_WARNING (CWE-401): [#def989]
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:138:30: warning[-Wanalyzer-malloc-leak]: leak of ‘tz_get_object_str(json,  pos, "StandardName")’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:225:22: enter_function: entry to ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:239:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: call_function: calling ‘load_timezones_from_file’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: return_function: returning to ‘load_timezones’ from ‘load_timezones_from_file’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:246:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:255:35: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:256:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:261:38: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: call_function: calling ‘reallocate_context’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: return_function: returning to ‘load_timezones’ from ‘reallocate_context’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:265:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:267:45: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:268:30: call_function: calling ‘tz_parse_json_entry’ from ‘load_timezones’
#  136|   	entry->Id = tz_get_object_str(json, pos, "Id");

#  137|   	entry->StandardName = tz_get_object_str(json, pos, "StandardName");

#  138|-> 	entry->DisplayName = tz_get_object_str(json, pos, "DisplayName");

#  139|   	entry->DaylightName = tz_get_object_str(json, pos, "DaylightName");

#  140|   	entry->Iana = tz_get_object_str(json, pos, "Iana");


Error: GCC_ANALYZER_WARNING (CWE-401): [#def990]
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:139:31: warning[-Wanalyzer-malloc-leak]: leak of ‘tz_get_object_str(json,  pos, "DisplayName")’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:225:22: enter_function: entry to ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:239:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: call_function: calling ‘load_timezones_from_file’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: return_function: returning to ‘load_timezones’ from ‘load_timezones_from_file’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:246:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:255:35: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:256:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:261:38: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: call_function: calling ‘reallocate_context’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: return_function: returning to ‘load_timezones’ from ‘reallocate_context’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:265:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:267:45: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:268:30: call_function: calling ‘tz_parse_json_entry’ from ‘load_timezones’
#  137|   	entry->StandardName = tz_get_object_str(json, pos, "StandardName");

#  138|   	entry->DisplayName = tz_get_object_str(json, pos, "DisplayName");

#  139|-> 	entry->DaylightName = tz_get_object_str(json, pos, "DaylightName");

#  140|   	entry->Iana = tz_get_object_str(json, pos, "Iana");

#  141|   	if (!entry->Id || !entry->StandardName || !entry->DisplayName || !entry->DaylightName ||


Error: GCC_ANALYZER_WARNING (CWE-401): [#def991]
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:140:23: warning[-Wanalyzer-malloc-leak]: leak of ‘tz_get_object_str(json,  pos, "DaylightName")’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:225:22: enter_function: entry to ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:239:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: call_function: calling ‘load_timezones_from_file’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: return_function: returning to ‘load_timezones’ from ‘load_timezones_from_file’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:246:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:255:35: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:256:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:261:38: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: call_function: calling ‘reallocate_context’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: return_function: returning to ‘load_timezones’ from ‘reallocate_context’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:265:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:267:45: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:268:30: call_function: calling ‘tz_parse_json_entry’ from ‘load_timezones’
#  138|   	entry->DisplayName = tz_get_object_str(json, pos, "DisplayName");

#  139|   	entry->DaylightName = tz_get_object_str(json, pos, "DaylightName");

#  140|-> 	entry->Iana = tz_get_object_str(json, pos, "Iana");

#  141|   	if (!entry->Id || !entry->StandardName || !entry->DisplayName || !entry->DaylightName ||

#  142|   	    !entry->Iana)


Error: GCC_ANALYZER_WARNING (CWE-401): [#def992]
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:141:12: warning[-Wanalyzer-malloc-leak]: leak of ‘tz_get_object_str(json,  pos, "Iana")’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:225:22: enter_function: entry to ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:239:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: call_function: calling ‘load_timezones_from_file’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: return_function: returning to ‘load_timezones’ from ‘load_timezones_from_file’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:246:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:255:35: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:256:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:261:38: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: call_function: calling ‘reallocate_context’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: return_function: returning to ‘load_timezones’ from ‘reallocate_context’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:265:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:267:45: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:268:30: call_function: calling ‘tz_parse_json_entry’ from ‘load_timezones’
#  139|   	entry->DaylightName = tz_get_object_str(json, pos, "DaylightName");

#  140|   	entry->Iana = tz_get_object_str(json, pos, "Iana");

#  141|-> 	if (!entry->Id || !entry->StandardName || !entry->DisplayName || !entry->DaylightName ||

#  142|   	    !entry->Iana)

#  143|   	{


Error: GCC_ANALYZER_WARNING (CWE-401): [#def993]
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:141:28: warning[-Wanalyzer-malloc-leak]: leak of ‘tz_get_object_str(json,  pos, "Iana")’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:225:22: enter_function: entry to ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:239:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: call_function: calling ‘load_timezones_from_file’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:245:24: return_function: returning to ‘load_timezones’ from ‘load_timezones_from_file’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:246:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:249:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:255:35: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:256:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:261:38: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: call_function: calling ‘reallocate_context’ from ‘load_timezones’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:22: return_function: returning to ‘load_timezones’ from ‘reallocate_context’
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:263:20: branch_false: following ‘false’ branch...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:265:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:267:45: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/timezone/TimeZoneNameMapUtils.c:268:30: call_function: calling ‘tz_parse_json_entry’ from ‘load_timezones’
#  139|   	entry->DaylightName = tz_get_object_str(json, pos, "DaylightName");

#  140|   	entry->Iana = tz_get_object_str(json, pos, "Iana");

#  141|-> 	if (!entry->Id || !entry->StandardName || !entry->DisplayName || !entry->DaylightName ||

#  142|   	    !entry->Iana)

#  143|   	{


Error: GCC_ANALYZER_WARNING (CWE-401): [#def994]
FreeRDP-3.12.0/winpr/libwinpr/utils/cmdline.c:824:23: warning[-Wanalyzer-malloc-leak]: leak of ‘CommandLineToCommaSeparatedValuesEx(argc,  argv, 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/cmdline.c:800:7: enter_function: entry to ‘CommandLineToCommaSeparatedValues’
FreeRDP-3.12.0/winpr/libwinpr/utils/cmdline.c:802:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/cmdline.c:802:16: call_function: calling ‘CommandLineToCommaSeparatedValuesEx’ from ‘CommandLineToCommaSeparatedValues’
#  822|   	char* str = NULL;
#  823|   	size_t offset = 0;
#  824|-> 	size_t size = WINPR_ASSERTING_INT_CAST(size_t, argc) + 1;
#  825|   	if ((argc <= 0) || !argv)
#  826|   		return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def995]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:122:13: warning[-Wanalyzer-use-after-free]: use after ‘ArrayList_Free’ of ‘arrayList’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:576:13: enter_function: entry to ‘ArrayList_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:580:34: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:582:12: branch_false: following ‘false’ branch (when ‘arrayList’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:585:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:588:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:590:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:591:14: call_function: calling ‘ArrayList_EnsureCapacity’ from ‘ArrayList_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:591:14: return_function: returning to ‘ArrayList_New’ from ‘ArrayList_EnsureCapacity’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:591:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:592:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:599:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:599:9: call_function: calling ‘ArrayList_Free’ from ‘ArrayList_New’
#  120|   {
#  121|   	WINPR_ASSERT(arrayList);
#  122|-> 	if (arrayList->synchronized)
#  123|   		EnterCriticalSection(&arrayList->lock);
#  124|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def996]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:599:9: warning[-Wanalyzer-mismatching-deallocation]: ‘arrayList’ should have been deallocated with ‘free’ but was deallocated with ‘ArrayList_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:576:13: enter_function: entry to ‘ArrayList_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:580:34: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:582:12: branch_false: following ‘false’ branch (when ‘arrayList’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:585:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:588:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:590:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:591:14: call_function: calling ‘ArrayList_EnsureCapacity’ from ‘ArrayList_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:591:14: return_function: returning to ‘ArrayList_New’ from ‘ArrayList_EnsureCapacity’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:591:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:592:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ArrayList.c:599:9: danger: deallocated with ‘ArrayList_Free’ here; allocation at [(2)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
#  597|   	WINPR_PRAGMA_DIAG_PUSH
#  598|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  599|-> 	ArrayList_Free(arrayList);
#  600|   	WINPR_PRAGMA_DIAG_POP
#  601|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def997]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:59:13: warning[-Wanalyzer-use-after-free]: use after ‘BufferPool_Free’ of ‘pool’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:496:14: enter_function: entry to ‘BufferPool_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:500:30: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:502:12: branch_true: following ‘true’ branch (when ‘pool’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:504:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:515:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:519:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:523:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:524:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:551:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:551:9: call_function: calling ‘BufferPool_Free’ from ‘BufferPool_New’
#   57|   		return FALSE;
#   58|   
#   59|-> 	if (pool->synchronized)
#   60|   		EnterCriticalSection(&pool->lock);
#   61|   	return TRUE;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def998]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:356:17: warning[-Wanalyzer-mismatching-deallocation]: ‘buffer’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_aligned_free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:227:7: enter_function: entry to ‘BufferPool_Take’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:237:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:263:20: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:288:20: branch_false: following ‘false’ branch (when ‘found != 0’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:306:34: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:308:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:311:37: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:311:36: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:315:69: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:317:36: branch_false: following ‘false’ branch (when ‘newBuffer’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:323:30: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:323:30: call_function: calling ‘BufferPool_ShiftAvailable’ from ‘BufferPool_Take’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:323:30: return_function: returning to ‘BufferPool_Take’ from ‘BufferPool_ShiftAvailable’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:323:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:327:20: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:327:20: branch_false: following ‘false’ branch (when ‘buffer’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:330:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:330:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:332:47: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:355:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:356:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:356:17: danger: deallocated with ‘winpr_aligned_free’ here
#  354|   out_error:
#  355|   	if (pool->alignment)
#  356|-> 		winpr_aligned_free(buffer);
#  357|   	else
#  358|   		free(buffer);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def999]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:358:17: warning[-Wanalyzer-mismatching-deallocation]: ‘buffer’ should have been deallocated with ‘winpr_aligned_free’ but was deallocated with ‘free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:237:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:263:20: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:282:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:288:20: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:288:20: branch_true: following ‘true’ branch (when ‘found == 0’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:290:28: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:290:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:294:37: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:294:36: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:295:50: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:295:50: acquire_memory: allocated here (expects deallocation with ‘winpr_aligned_free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:300:36: branch_false: following ‘false’ branch (when ‘buffer’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:330:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:330:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:332:47: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:334:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:335:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:355:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:358:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:358:17: danger: deallocated with ‘free’ here; allocation at [(11)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/10) expects deallocation with ‘winpr_aligned_free’
#  356|   		winpr_aligned_free(buffer);
#  357|   	else
#  358|-> 		free(buffer);
#  359|   out_error_no_free:
#  360|   	BufferPool_Unlock(pool);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1000]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:551:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:502:12: branch_true: following ‘true’ branch (when ‘pool’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:504:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:512:20: branch_false: following ‘false’ branch (when ‘synchronized == 0’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:515:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:515:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:530:25: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:532:58: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:534:28: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:537:25: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:541:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:542:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:551:9: danger: ‘<unknown>’ leaks here; was allocated at [(7)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/6)
#  549|   	WINPR_PRAGMA_DIAG_PUSH
#  550|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  551|-> 	BufferPool_Free(pool);
#  552|   	WINPR_PRAGMA_DIAG_POP
#  553|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1001]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:551:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pool’ should have been deallocated with ‘free’ but was deallocated with ‘BufferPool_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:500:30: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:502:12: branch_true: following ‘true’ branch (when ‘pool’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:504:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:512:20: branch_false: following ‘false’ branch (when ‘synchronized == 0’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:515:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:515:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:519:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:523:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:524:33: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/BufferPool.c:551:9: danger: deallocated with ‘BufferPool_Free’ here; allocation at [(1)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  549|   	WINPR_PRAGMA_DIAG_PUSH
#  550|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  551|-> 	BufferPool_Free(pool);
#  552|   	WINPR_PRAGMA_DIAG_POP
#  553|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1002]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:196:9: warning[-Wanalyzer-mismatching-deallocation]: ‘countdown’ should have been deallocated with ‘free’ but was deallocated with ‘CountdownEvent_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:170:56: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:172:12: branch_false: following ‘false’ branch (when ‘countdown’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:175:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:178:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:179:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:196:9: danger: deallocated with ‘CountdownEvent_Free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  194|   	WINPR_PRAGMA_DIAG_PUSH
#  195|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  196|-> 	CountdownEvent_Free(countdown);
#  197|   	WINPR_PRAGMA_DIAG_POP
#  198|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1003]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:207:15: warning[-Wanalyzer-use-after-free]: use after ‘CountdownEvent_Free’ of ‘countdown’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:168:18: enter_function: entry to ‘CountdownEvent_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:170:56: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:172:12: branch_false: following ‘false’ branch (when ‘countdown’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:175:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:196:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/CountdownEvent.c:196:9: call_function: calling ‘CountdownEvent_Free’ from ‘CountdownEvent_New’
#  205|   
#  206|   	DeleteCriticalSection(&countdown->lock);
#  207|-> 	(void)CloseHandle(countdown->event);
#  208|   
#  209|   	free(countdown);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1004]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:787:9: warning[-Wanalyzer-mismatching-deallocation]: ‘table’ should have been deallocated with ‘free’ but was deallocated with ‘HashTable_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:762:42: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:764:12: branch_false: following ‘false’ branch (when ‘table’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:767:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:773:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:774:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:787:9: danger: deallocated with ‘HashTable_Free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  785|   	WINPR_PRAGMA_DIAG_PUSH
#  786|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  787|-> 	HashTable_Free(table);
#  788|   	WINPR_PRAGMA_DIAG_POP
#  789|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1005]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:800:13: warning[-Wanalyzer-use-after-free]: use after ‘HashTable_Free’ of ‘table’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:760:13: enter_function: entry to ‘HashTable_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:762:42: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:764:12: branch_false: following ‘false’ branch (when ‘table’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:767:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:773:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:774:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:787:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/HashTable.c:787:9: call_function: calling ‘HashTable_Free’ from ‘HashTable_New’
#  798|   		return;
#  799|   
#  800|-> 	if (table->bucketArray)
#  801|   	{
#  802|   		for (size_t index = 0; index < table->numOfBuckets; index++)

Error: GCC_ANALYZER_WARNING (CWE-476): [#def1006]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:174:25: warning[-Wanalyzer-null-dereference]: dereference of NULL ‘pKeys’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:134:12: branch_false: following ‘false’ branch (when ‘ppKeys’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:137:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:153:12: branch_false: following ‘false’ branch (when ‘count == 0’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:168:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:168:12: branch_true: following ‘true’ branch...
 branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:172:24: branch_true: following ‘true’ branch (when ‘item’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:174:53: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:174:30: release_memory: ‘pKeys’ is NULL
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/ListDictionary.c:174:25: danger: dereference of NULL ‘pKeys + index * 8’
#  172|   		while (item)
#  173|   		{
#  174|-> 			pKeys[index++] = (ULONG_PTR)item->key;
#  175|   			item = item->next;
#  176|   		}

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1007]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:266:9: warning[-Wanalyzer-mismatching-deallocation]: ‘queue’ should have been deallocated with ‘free’ but was deallocated with ‘MessageQueue_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:244:33: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:245:12: branch_false: following ‘false’ branch (when ‘queue’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:248:52: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:266:9: danger: deallocated with ‘MessageQueue_Free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  264|   	WINPR_PRAGMA_DIAG_PUSH
#  265|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  266|-> 	MessageQueue_Free(queue);
#  267|   	WINPR_PRAGMA_DIAG_POP
#  268|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1008]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:276:13: warning[-Wanalyzer-use-after-free]: use after ‘MessageQueue_Free’ of ‘queue’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:240:16: enter_function: entry to ‘MessageQueue_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:244:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:245:12: branch_false: following ‘false’ branch (when ‘queue’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:248:52: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:266:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/MessageQueue.c:266:9: call_function: calling ‘MessageQueue_Free’ from ‘MessageQueue_New’
#  274|   		return;
#  275|   
#  276|-> 	if (queue->event)
#  277|   		MessageQueue_Clear(queue);
#  278|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1009]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:252:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pubSub’ should have been deallocated with ‘free’ but was deallocated with ‘PubSub_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:231:37: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:233:12: branch_false: following ‘false’ branch (when ‘pubSub’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:236:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:238:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:252:9: danger: deallocated with ‘PubSub_Free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  250|   	WINPR_PRAGMA_DIAG_PUSH
#  251|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  252|-> 	PubSub_Free(pubSub);
#  253|   	WINPR_PRAGMA_DIAG_POP
#  254|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1010]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:261:21: warning[-Wanalyzer-use-after-free]: use after ‘PubSub_Free’ of ‘pubSub’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:229:10: enter_function: entry to ‘PubSub_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:231:37: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:233:12: branch_false: following ‘false’ branch (when ‘pubSub’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:236:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:245:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:246:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:252:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/PubSub.c:252:9: call_function: calling ‘PubSub_Free’ from ‘PubSub_New’
#  259|   	if (pubSub)
#  260|   	{
#  261|-> 		if (pubSub->synchronized)
#  262|   			DeleteCriticalSection(&pubSub->lock);
#  263|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1011]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:333:9: warning[-Wanalyzer-mismatching-deallocation]: ‘queue’ should have been deallocated with ‘free’ but was deallocated with ‘Queue_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:302:26: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:304:12: branch_false: following ‘false’ branch (when ‘queue’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:307:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:315:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:316:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:333:9: danger: deallocated with ‘Queue_Free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  331|   	WINPR_PRAGMA_DIAG_PUSH
#  332|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  333|-> 	Queue_Free(queue);
#  334|   	WINPR_PRAGMA_DIAG_POP
#  335|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1012]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:343:13: warning[-Wanalyzer-use-after-free]: use after ‘Queue_Free’ of ‘queue’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:298:9: enter_function: entry to ‘Queue_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:302:26: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:304:12: branch_false: following ‘false’ branch (when ‘queue’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:307:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:333:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Queue.c:333:9: call_function: calling ‘Queue_Free’ from ‘Queue_New’
#  341|   		return;
#  342|   
#  343|-> 	if (queue->haveLock)
#  344|   	{
#  345|   		Queue_Clear(queue);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1013]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:237:9: warning[-Wanalyzer-mismatching-deallocation]: ‘stack’ should have been deallocated with ‘free’ but was deallocated with ‘Stack_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:217:26: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:219:12: branch_false: following ‘false’ branch (when ‘stack’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:222:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:227:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:228:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:237:9: danger: deallocated with ‘Stack_Free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  235|   	WINPR_PRAGMA_DIAG_PUSH
#  236|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  237|-> 	Stack_Free(stack);
#  238|   	WINPR_PRAGMA_DIAG_POP
#  239|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1014]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:246:21: warning[-Wanalyzer-use-after-free]: use after ‘Stack_Free’ of ‘stack’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:214:9: enter_function: entry to ‘Stack_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:217:26: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:219:12: branch_false: following ‘false’ branch (when ‘stack’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:222:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:227:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:228:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:237:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/Stack.c:237:9: call_function: calling ‘Stack_Free’ from ‘Stack_New’
#  244|   	if (stack)
#  245|   	{
#  246|-> 		if (stack->synchronized)
#  247|   			DeleteCriticalSection(&stack->lock);
#  248|   

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1015]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:93:13: warning[-Wanalyzer-use-after-free]: use after ‘StreamPool_Free’ of ‘pool’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:399:14: enter_function: entry to ‘StreamPool_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:403:30: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:405:12: branch_true: following ‘true’ branch (when ‘pool’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:407:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:22: call_function: calling ‘StreamPool_EnsureCapacity’ from ‘StreamPool_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:22: return_function: returning to ‘StreamPool_New’ from ‘StreamPool_EnsureCapacity’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:411:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:422:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:422:9: call_function: calling ‘StreamPool_Free’ from ‘StreamPool_New’
#   91|   {
#   92|   	WINPR_ASSERT(pool);
#   93|-> 	if (pool->synchronized)
#   94|   		EnterCriticalSection(&pool->lock);
#   95|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1016]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:422:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:399:14: enter_function: entry to ‘StreamPool_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:405:12: branch_true: following ‘true’ branch (when ‘pool’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:407:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:22: call_function: calling ‘StreamPool_EnsureCapacity’ from ‘StreamPool_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:22: return_function: returning to ‘StreamPool_New’ from ‘StreamPool_EnsureCapacity’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:20: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:412:22: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:412:22: call_function: calling ‘StreamPool_EnsureCapacity’ from ‘StreamPool_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:412:22: return_function: returning to ‘StreamPool_New’ from ‘StreamPool_EnsureCapacity’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:412:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:413:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:422:9: danger: ‘<unknown>’ leaks here; was allocated at [(14)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/13)
#  420|   	WINPR_PRAGMA_DIAG_PUSH
#  421|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  422|-> 	StreamPool_Free(pool);
#  423|   	WINPR_PRAGMA_DIAG_POP
#  424|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1017]
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:422:9: warning[-Wanalyzer-mismatching-deallocation]: ‘pool’ should have been deallocated with ‘free’ but was deallocated with ‘StreamPool_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:399:14: enter_function: entry to ‘StreamPool_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:403:30: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:405:12: branch_true: following ‘true’ branch (when ‘pool’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:407:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:22: call_function: calling ‘StreamPool_EnsureCapacity’ from ‘StreamPool_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:22: return_function: returning to ‘StreamPool_New’ from ‘StreamPool_EnsureCapacity’
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:410:20: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:411:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/collections/StreamPool.c:422:9: danger: deallocated with ‘StreamPool_Free’ here; allocation at [(2)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
#  420|   	WINPR_PRAGMA_DIAG_PUSH
#  421|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  422|-> 	StreamPool_Free(pool);
#  423|   	WINPR_PRAGMA_DIAG_POP
#  424|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1018]
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:119:16: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_backtrace(20)’
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:208:6: enter_function: entry to ‘winpr_log_backtrace_ex’
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:212:23: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:212:23: call_function: calling ‘winpr_backtrace’ from ‘winpr_log_backtrace_ex’
#  117|   {
#  118|   #if defined(USE_UNWIND)
#  119|-> 	return winpr_unwind_backtrace(size);
#  120|   #elif defined(USE_EXECINFO)
#  121|   	return winpr_execinfo_backtrace(size);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1019]
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:146:16: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_backtrace_symbols(buffer, & used)’
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:176:6: enter_function: entry to ‘winpr_backtrace_symbols_fd’
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:178:12: branch_false: following ‘false’ branch (when ‘buffer’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:188:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:189:32: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:189:32: call_function: calling ‘winpr_backtrace_symbols’ from ‘winpr_backtrace_symbols_fd’
#  144|   
#  145|   #if defined(USE_UNWIND)
#  146|-> 	return winpr_unwind_backtrace_symbols(buffer, used);
#  147|   #elif defined(USE_EXECINFO)
#  148|   	return winpr_execinfo_backtrace_symbols(buffer, used);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1020]
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:146:16: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_backtrace_symbols(winpr_backtrace(20), &used)’
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:208:6: enter_function: entry to ‘winpr_log_backtrace_ex’
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:214:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:220:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:220:15: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/debug.c:220:15: call_function: calling ‘winpr_backtrace_symbols’ from ‘winpr_log_backtrace_ex’
#  144|   
#  145|   #if defined(USE_UNWIND)
#  146|-> 	return winpr_unwind_backtrace_symbols(buffer, used);
#  147|   #elif defined(USE_EXECINFO)
#  148|   	return winpr_execinfo_backtrace_symbols(buffer, used);

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1021]
FreeRDP-3.12.0/winpr/libwinpr/utils/image.c:280:35: warning[-Wanalyzer-malloc-leak]: leak of ‘winpr_bitmap_write_buffer(*image.data,  size, *image.width, *image.height, *image.scanline, *image.bitsPerPixel, & outsize)’
FreeRDP-3.12.0/winpr/libwinpr/utils/image.c:1291:7: enter_function: entry to ‘winpr_image_write_buffer’
FreeRDP-3.12.0/winpr/libwinpr/utils/image.c:1300:38: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/image.c:1300:38: call_function: calling ‘winpr_bitmap_write_buffer’ from ‘winpr_image_write_buffer’
#  278|   
#  279|   	void* result = NULL;
#  280|-> 	const size_t bpp_stride = 1ull * width * (bpp / 8);
#  281|   	if (bpp_stride > UINT32_MAX)
#  282|   		return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1022]
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:328:13: warning[-Wanalyzer-malloc-leak]: leak of ‘IniFile_New()’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:839:11: enter_function: entry to ‘IniFile_Clone’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:841:12: branch_false: following ‘false’ branch (when ‘ini’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: call_function: calling ‘IniFile_New’ from ‘IniFile_Clone’
#  326|   	WINPR_ASSERT(ini);
#  327|   
#  328|-> 	if (ini->nSections + count >= ini->cSections)
#  329|   	{
#  330|   		const size_t new_size = ini->cSections + count + 1024;

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1023]
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:495:14: warning[-Wanalyzer-use-after-free]: use after ‘IniFile_Free’ of ‘ini’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:819:11: enter_function: entry to ‘IniFile_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:821:36: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:823:12: branch_false: following ‘false’ branch (when ‘ini’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:826:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:826:14: call_function: calling ‘IniFile_SectionResize’ from ‘IniFile_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:826:14: return_function: returning to ‘IniFile_New’ from ‘IniFile_SectionResize’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:826:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:827:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:834:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:834:9: call_function: calling ‘IniFile_Free’ from ‘IniFile_New’
#  493|   {
#  494|   	WINPR_ASSERT(ini);
#  495|-> 	free(ini->filename);
#  496|   	ini->filename = NULL;
#  497|   

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1024]
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:806:12: warning[-Wanalyzer-malloc-leak]: leak of ‘IniFile_New()’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:839:11: enter_function: entry to ‘IniFile_Clone’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:841:12: branch_false: following ‘false’ branch (when ‘ini’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: call_function: calling ‘IniFile_New’ from ‘IniFile_Clone’
#  804|   void IniFile_Free(wIniFile* ini)
#  805|   {
#  806|-> 	if (!ini)
#  807|   		return;
#  808|   

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1025]
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:834:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ini’ should have been deallocated with ‘free’ but was deallocated with ‘IniFile_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:819:11: enter_function: entry to ‘IniFile_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:821:36: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:823:12: branch_false: following ‘false’ branch (when ‘ini’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:826:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:826:14: call_function: calling ‘IniFile_SectionResize’ from ‘IniFile_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:826:14: return_function: returning to ‘IniFile_New’ from ‘IniFile_SectionResize’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:826:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:827:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:834:9: danger: deallocated with ‘IniFile_Free’ here; allocation at [(2)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/1) expects deallocation with ‘free’
#  832|   	WINPR_PRAGMA_DIAG_PUSH
#  833|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  834|-> 	IniFile_Free(ini);
#  835|   	WINPR_PRAGMA_DIAG_POP
#  836|   	return NULL;

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1026]
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:883:9: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:839:11: enter_function: entry to ‘IniFile_Clone’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:841:12: branch_false: following ‘false’ branch (when ‘ini’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: call_function: calling ‘IniFile_New’ from ‘IniFile_Clone’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: return_function: returning to ‘IniFile_Clone’ from ‘IniFile_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:845:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:848:28: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:849:14: call_function: calling ‘IniFile_SetFilename’ from ‘IniFile_Clone’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:849:14: return_function: returning to ‘IniFile_Clone’ from ‘IniFile_SetFilename’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:849:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:852:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:852:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:859:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:861:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:863:46: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:864:20: branch_true: following ‘true’ branch (when ‘cur’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:865:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:883:9: danger: ‘<unknown>’ leaks here; was allocated at [(12)](sarif:/runs/0/results/4/codeFlows/0/threadFlows/0/locations/11)
#  881|   
#  882|   fail:
#  883|-> 	IniFile_Free(copy);
#  884|   	return NULL;
#  885|   }

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1027]
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:883:9: warning[-Wanalyzer-mismatching-deallocation]: ‘IniFile_New()’ should have been deallocated with ‘free’ but was deallocated with ‘IniFile_Free’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:839:11: enter_function: entry to ‘IniFile_Clone’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:841:12: branch_false: following ‘false’ branch (when ‘ini’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: call_function: calling ‘IniFile_New’ from ‘IniFile_Clone’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:844:26: return_function: returning to ‘IniFile_Clone’ from ‘IniFile_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:845:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:848:28: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:849:14: call_function: calling ‘IniFile_SetFilename’ from ‘IniFile_Clone’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:849:14: return_function: returning to ‘IniFile_Clone’ from ‘IniFile_SetFilename’
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:849:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:852:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:852:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:859:26: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:861:28: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:863:46: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:864:20: branch_true: following ‘true’ branch (when ‘cur’ is NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:865:25: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/ini.c:883:9: danger: deallocated with ‘IniFile_Free’ here; allocation at [(6)](sarif:/runs/0/results/5/codeFlows/0/threadFlows/0/locations/5) expects deallocation with ‘free’
#  881|   
#  882|   fail:
#  883|-> 	IniFile_Free(copy);
#  884|   	return NULL;
#  885|   }

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1028]
FreeRDP-3.12.0/winpr/libwinpr/utils/sam.c:266:17: warning[-Wanalyzer-malloc-leak]: leak of ‘<unknown>’
FreeRDP-3.12.0/winpr/libwinpr/utils/sam.c:344:18: enter_function: entry to ‘SamLookupUserW’
FreeRDP-3.12.0/winpr/libwinpr/utils/sam.c:354:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/sam.c:356:12: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/sam.c:356:12: branch_false: following ‘false’ branch (when ‘DomainLength == 0’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/sam.c:362:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/sam.c:362:17: call_function: calling ‘SamLookupUserA’ from ‘SamLookupUserW’
#  264|   			free(entry->Domain);
#  265|   
#  266|-> 		free(entry);
#  267|   	}
#  268|   }

Error: CPPCHECK_WARNING (CWE-476): [#def1029]
FreeRDP-3.12.0/winpr/libwinpr/utils/stream.c:67: warning[nullPointerOutOfMemory]: If memory allocation fails, then there is a possible null pointer dereference: new_buf
#   65|   		{
#   66|   			new_buf = (BYTE*)malloc(new_capacity);
#   67|-> 			CopyMemory(new_buf, s->buffer, s->capacity);
#   68|   			s->isOwner = TRUE;
#   69|   		}

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1030]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:112:17: warning[-Wanalyzer-mismatching-deallocation]: ‘CommandLineParseCommaSeparatedValuesEx(&testListAppName,  list, & count)’ should have been deallocated with ‘CommandLineParserFree’ but was deallocated with ‘free’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:95:13: enter_function: entry to ‘TestCommandLineParseCommaSeparatedValuesEx’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:100:28: branch_true: following ‘true’ branch (when ‘x != 11’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:108:29: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:110:26: acquire_memory: allocated here (expects deallocation with ‘CommandLineParserFree’)
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:111:30: call_function: calling ‘checkResult’ from ‘TestCommandLineParseCommaSeparatedValuesEx’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:111:30: return_function: returning to ‘TestCommandLineParseCommaSeparatedValuesEx’ from ‘checkResult’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:112:17: danger: deallocated with ‘free’ here; allocation at [(4)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/3) expects deallocation with ‘CommandLineParserFree’
#  110|   		ptr.pp = CommandLineParseCommaSeparatedValuesEx(testListAppName, list, &count);
#  111|   		BOOL valid = checkResult(x, ptr.pp, count);
#  112|-> 		free(ptr.p);
#  113|   		if (!valid)
#  114|   			return FALSE;

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1031]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:312:25: warning[-Wanalyzer-mismatching-deallocation]: ‘CommandLineParseCommaSeparatedValuesEx(*arg.Name, *arg.Value, & count)’ should have been deallocated with ‘CommandLineParserFree’ but was deallocated with ‘free’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:196:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:202:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:204:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:210:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:212:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:218:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:220:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:226:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:228:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:234:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:236:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:242:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:244:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:250:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:252:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:258:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:260:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:266:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:268:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:274:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:276:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:283:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:311:36: acquire_memory: allocated here (expects deallocation with ‘CommandLineParserFree’)
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:312:25: danger: deallocated with ‘free’ here; allocation at [(23)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/22) expects deallocation with ‘CommandLineParserFree’
#  310|   			size_t count = 0;
#  311|   			char** p = CommandLineParseCommaSeparatedValuesEx(arg->Name, arg->Value, &count);
#  312|-> 			free((void*)p);
#  313|   
#  314|   			if (!p || count != 3)

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1032]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:326:25: warning[-Wanalyzer-mismatching-deallocation]: ‘CommandLineParseCommaSeparatedValuesEx(*arg.Name, *arg.Value, & count)’ should have been deallocated with ‘CommandLineParserFree’ but was deallocated with ‘free’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:196:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:202:18: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:204:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:210:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:212:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:218:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:220:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:226:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:228:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:234:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:236:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:242:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:244:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:250:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:252:12: branch_false: following ‘false’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:258:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:260:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:266:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:268:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:274:15: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:276:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:283:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:294:17: branch_false: following ‘false’ branch (when the strings are non-equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:301:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:301:17: branch_false: following ‘false’ branch (when the strings are non-equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:308:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:308:17: branch_false: following ‘false’ branch (when the strings are non-equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:322:17: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:322:17: branch_true: following ‘true’ branch (when the strings are equal)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:324:32: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:325:36: acquire_memory: allocated here (expects deallocation with ‘CommandLineParserFree’)
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestCmdLine.c:326:25: danger: deallocated with ‘free’ here; allocation at [(31)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/30) expects deallocation with ‘CommandLineParserFree’
#  324|   			size_t count = 0;
#  325|   			char** p = CommandLineParseCommaSeparatedValuesEx(arg->Name, arg->Value, &count);
#  326|-> 			free((void*)p);
#  327|   
#  328|   			if (!p || count != 1)

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1033]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:12: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &message_queue_consumer_thread,  MessageQueue_New(0), 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:12: danger: ‘CreateThread(0, 0, &message_queue_consumer_thread,  MessageQueue_New(0), 0, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/2)
#   44|   	}
#   45|   
#   46|-> 	if (!MessageQueue_Post(queue, NULL, 123, NULL, NULL) ||
#   47|   	    !MessageQueue_Post(queue, NULL, 456, NULL, NULL) ||
#   48|   	    !MessageQueue_Post(queue, NULL, 789, NULL, NULL) || !MessageQueue_PostQuit(queue, 0) ||

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1034]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &message_queue_consumer_thread,  MessageQueue_New(0), 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:47:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: danger: ‘CreateThread(0, 0, &message_queue_consumer_thread,  MessageQueue_New(0), 0, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/2)
#   44|   	}
#   45|   
#   46|-> 	if (!MessageQueue_Post(queue, NULL, 123, NULL, NULL) ||
#   47|   	    !MessageQueue_Post(queue, NULL, 456, NULL, NULL) ||
#   48|   	    !MessageQueue_Post(queue, NULL, 789, NULL, NULL) || !MessageQueue_PostQuit(queue, 0) ||

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1035]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &message_queue_consumer_thread,  MessageQueue_New(0), 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:47:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:48:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: danger: ‘CreateThread(0, 0, &message_queue_consumer_thread,  MessageQueue_New(0), 0, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/2)
#   44|   	}
#   45|   
#   46|-> 	if (!MessageQueue_Post(queue, NULL, 123, NULL, NULL) ||
#   47|   	    !MessageQueue_Post(queue, NULL, 456, NULL, NULL) ||
#   48|   	    !MessageQueue_Post(queue, NULL, 789, NULL, NULL) || !MessageQueue_PostQuit(queue, 0) ||

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1036]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: warning[-Wanalyzer-malloc-leak]: leak of ‘CreateThread(0, 0, &message_queue_consumer_thread,  MessageQueue_New(0), 0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:33:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:24: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:24: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:39:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:47:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:48:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:48:66: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestMessageQueue.c:46:13: danger: ‘CreateThread(0, 0, &message_queue_consumer_thread,  MessageQueue_New(0), 0, 0)’ leaks here; was allocated at [(3)](sarif:/runs/0/results/3/codeFlows/0/threadFlows/0/locations/2)
#   44|   	}
#   45|   
#   46|-> 	if (!MessageQueue_Post(queue, NULL, 123, NULL, NULL) ||
#   47|   	    !MessageQueue_Post(queue, NULL, 456, NULL, NULL) ||
#   48|   	    !MessageQueue_Post(queue, NULL, 789, NULL, NULL) || !MessageQueue_PostQuit(queue, 0) ||

Error: GCC_ANALYZER_WARNING (CWE-401): [#def1037]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:84:12: warning[-Wanalyzer-malloc-leak]: leak of ‘Stream_New(0, 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:82:22: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:84:12: danger: ‘Stream_New(0, 0)’ leaks here; was allocated at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0)
#   82|   	wStream* s = Stream_New(NULL, 0);
#   83|   
#   84|-> 	if (s)
#   85|   		return FALSE;
#   86|   	Stream_Free(s, TRUE);

Error: GCC_ANALYZER_WARNING (CWE-590): [#def1038]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:133:9: warning[-Wanalyzer-free-of-non-heap]: ‘Stream_Free’ of ‘&staticStream’ which points to memory on the stack
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:91:13: enter_function: entry to ‘TestStream_Static’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:101:9: call_function: inlined call to ‘stream_read_u16_le’ from ‘TestStream_Static’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:103:12: branch_false: following ‘false’ branch (when ‘v == 51889’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:106:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:109:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:113:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:113:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:118:9: call_function: inlined call to ‘stream_read_u16_le’ from ‘TestStream_Static’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:120:12: branch_false: following ‘false’ branch (when ‘v == 1’)...
 branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:123:9: call_function: inlined call to ‘stream_read_u16_le’ from ‘TestStream_Static’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:125:12: branch_false: following ‘false’ branch (when ‘v == 2’)...
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:133:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:133:9: danger: call to ‘Stream_Free’ here
#  131|   	WINPR_PRAGMA_DIAG_PUSH
#  132|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  133|-> 	Stream_Free(s, TRUE);
#  134|   	WINPR_PRAGMA_DIAG_POP
#  135|   	return TRUE;

Error: COMPILER_WARNING (CWE-590): [#def1039]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:133:9: warning[-Wfree-nonheap-object]: ‘Stream_Free’ called on unallocated object ‘staticStream’
#  133 |         Stream_Free(s, TRUE);
#      |         ^
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c: scope_hint: In function ‘TestStream’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:94:17: note: declared here
#   94 |         wStream staticStream = { 0 };
#      |                 ^
#  131|   	WINPR_PRAGMA_DIAG_PUSH
#  132|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  133|-> 	Stream_Free(s, TRUE);
#  134|   	WINPR_PRAGMA_DIAG_POP
#  135|   	return TRUE;

Error: COMPILER_WARNING (CWE-590): [#def1040]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStream.c:133:9: warning[-Wfree-nonheap-object]: ‘Stream_Free’ called on unallocated object ‘staticStream’
#  131|   	WINPR_PRAGMA_DIAG_PUSH
#  132|   	WINPR_PRAGMA_DIAG_IGNORED_MISMATCHED_DEALLOC
#  133|-> 	Stream_Free(s, TRUE);
#  134|   	WINPR_PRAGMA_DIAG_POP
#  135|   	return TRUE;

Error: GCC_ANALYZER_WARNING (CWE-415): [#def1041]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:56:9: warning[-Wanalyzer-double-free]: double-‘Stream_Release’ of ‘StreamPool_Take(StreamPool_New(1, 16384), 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:40:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:55:9: release_memory: first ‘Stream_Release’ here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:56:9: danger: second ‘Stream_Release’ here; first ‘Stream_Release’ was at [(2)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/1)
#   54|   
#   55|   	Stream_Release(s[2]);
#   56|-> 	Stream_Release(s[2]);
#   57|   
#   58|   	Stream_Release(s[3]);

Error: GCC_ANALYZER_WARNING (CWE-415): [#def1042]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:59:9: warning[-Wanalyzer-double-free]: double-‘Stream_Release’ of ‘StreamPool_Take(StreamPool_New(1, 16384), 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:41:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:58:9: release_memory: first ‘Stream_Release’ here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:59:9: danger: second ‘Stream_Release’ here; first ‘Stream_Release’ was at [(2)](sarif:/runs/0/results/1/codeFlows/0/threadFlows/0/locations/1)
#   57|   
#   58|   	Stream_Release(s[3]);
#   59|-> 	Stream_Release(s[3]);
#   60|   	Stream_Release(s[3]);
#   61|   

Error: GCC_ANALYZER_WARNING (CWE-415): [#def1043]
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:63:9: warning[-Wanalyzer-double-free]: double-‘Stream_Release’ of ‘StreamPool_Take(StreamPool_New(1, 16384), 0)’
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:42:16: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:62:9: release_memory: first ‘Stream_Release’ here
FreeRDP-3.12.0/winpr/libwinpr/utils/test/TestStreamPool.c:63:9: danger: second ‘Stream_Release’ here; first ‘Stream_Release’ was at [(2)](sarif:/runs/0/results/2/codeFlows/0/threadFlows/0/locations/1)
#   61|   
#   62|   	Stream_Release(s[4]);
#   63|-> 	Stream_Release(s[4]);
#   64|   	Stream_Release(s[4]);
#   65|   	Stream_Release(s[4]);

Error: GCC_ANALYZER_WARNING (CWE-762): [#def1044]
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:150:9: warning[-Wanalyzer-mismatching-deallocation]: ‘ctx’ should have been deallocated with ‘free’ but was deallocated with ‘winpr_unwind_backtrace_free’
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:131:33: acquire_memory: allocated here (expects deallocation with ‘free’)
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:132:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:134:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:136:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:137:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:150:9: danger: deallocated with ‘winpr_unwind_backtrace_free’ here; allocation at [(1)](sarif:/runs/0/results/0/codeFlows/0/threadFlows/0/locations/0) expects deallocation with ‘free’
#  148|   	return ctx;
#  149|   fail:
#  150|-> 	winpr_unwind_backtrace_free(ctx);
#  151|   	return NULL;
#  152|   }

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1045]
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:159:14: warning[-Wanalyzer-use-after-free]: use after ‘winpr_unwind_backtrace_free’ of ‘buffer’
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:128:7: enter_function: entry to ‘winpr_unwind_backtrace’
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:131:33: acquire_memory: allocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:132:12: branch_false: following ‘false’ branch (when ‘ctx’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:134:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:136:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:137:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:150:9: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:150:9: call_function: calling ‘winpr_unwind_backtrace_free’ from ‘winpr_unwind_backtrace’
#  157|   	if (!ctx)
#  158|   		return;
#  159|-> 	free(ctx->info);
#  160|   	free(ctx);
#  161|   }

Error: CPPCHECK_WARNING (CWE-401): [#def1046]
FreeRDP-3.12.0/winpr/libwinpr/utils/unwind/debug.c:201: error[memleak]: Memory leak: cnv.pv
#  199|   
#  200|   	// NOLINTNEXTLINE(clang-analyzer-unix.Malloc): function is an allocator
#  201|-> 	return cnv.cpp;
#  202|   }

Error: GCC_ANALYZER_WARNING (CWE-416): [#def1047]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/Appender.c:29:13: warning[-Wanalyzer-use-after-free]: use after ‘WLog_Appender_Free’ of ‘appender’
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/Appender.c:152:6: enter_function: entry to ‘WLog_SetLogAppenderType’
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/Appender.c:154:12: branch_false: following ‘false’ branch (when ‘log’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/Appender.c:157:13: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/Appender.c:157:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/Appender.c:159:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/Appender.c:159:17: release_memory: deallocated here
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/Appender.c:159:17: call_function: calling ‘WLog_Appender_Free’ from ‘WLog_SetLogAppenderType’
#   27|   		return;
#   28|   
#   29|-> 	if (appender->Layout)
#   30|   	{
#   31|   		WLog_Layout_Free(log, appender->Layout);

Error: CPPCHECK_WARNING (CWE-562): [#def1048]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/CallbackAppender.c:52: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
#   50|   		return FALSE;
#   51|   
#   52|-> 	message->PrefixString = prefix;
#   53|   	WLog_Layout_GetMessagePrefix(log, appender->Layout, message);
#   54|   

Error: CPPCHECK_WARNING (CWE-562): [#def1049]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/CallbackAppender.c:72: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
#   70|   		return FALSE;
#   71|   
#   72|-> 	message->PrefixString = prefix;
#   73|   	WLog_Layout_GetMessagePrefix(log, appender->Layout, message);
#   74|   

Error: CPPCHECK_WARNING (CWE-562): [#def1050]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/CallbackAppender.c:91: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
#   89|   		return FALSE;
#   90|   
#   91|-> 	message->PrefixString = prefix;
#   92|   	WLog_Layout_GetMessagePrefix(log, appender->Layout, message);
#   93|   

Error: CPPCHECK_WARNING (CWE-562): [#def1051]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/CallbackAppender.c:110: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
#  108|   		return FALSE;
#  109|   
#  110|-> 	message->PrefixString = prefix;
#  111|   	WLog_Layout_GetMessagePrefix(log, appender->Layout, message);
#  112|   

Error: CPPCHECK_WARNING (CWE-562): [#def1052]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/ConsoleAppender.c:64: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
#   62|   	consoleAppender = (wLogConsoleAppender*)appender;
#   63|   
#   64|-> 	message->PrefixString = prefix;
#   65|   	WLog_Layout_GetMessagePrefix(log, appender->Layout, message);
#   66|   

Error: CPPCHECK_WARNING (CWE-562): [#def1053]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/FileAppender.c:144: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
#  142|   		return FALSE;
#  143|   
#  144|-> 	message->PrefixString = prefix;
#  145|   	WLog_Layout_GetMessagePrefix(log, appender->Layout, message);
#  146|   	(void)fprintf(fp, "%s%s\n", message->PrefixString, message->TextString);

Error: CPPCHECK_WARNING (CWE-562): [#def1054]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/UdpAppender.c:99: error[autoVariables]: Address of local auto-variable assigned to a function parameter.
#   97|   
#   98|   	udpAppender = (wLogUdpAppender*)appender;
#   99|-> 	message->PrefixString = prefix;
#  100|   	WLog_Layout_GetMessagePrefix(log, appender->Layout, message);
#  101|   	(void)_sendto(udpAppender->sock, message->PrefixString,

Error: GCC_ANALYZER_WARNING (CWE-457): [#def1055]
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:921:22: warning[-Wanalyzer-use-of-uninitialized-value]: use of uninitialized value ‘*log.Name’
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:830:7: enter_function: entry to ‘WLog_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:838:12: branch_false: following ‘false’ branch (when ‘log’ is non-NULL)...
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:841:21: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:843:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:846:14: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:846:14: call_function: calling ‘WLog_ParseName’ from ‘WLog_New’
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:846:14: return_function: returning to ‘WLog_New’ from ‘WLog_ParseName’
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:846:12: branch_false: following ‘false’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:849:9: branch_false: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:854:12: branch_true: following ‘true’ branch...
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:855:17: branch_true: ...to here
FreeRDP-3.12.0/winpr/libwinpr/utils/wlog/wlog.c:907:9: call_function: calling ‘WLog_Free’ from ‘WLog_New’
#  919|   		}
#  920|   
#  921|-> 		free(log->Name);
#  922|   
#  923|   		/* The first element in this array is allocated, the rest are indices into this variable */

Scan Properties

analyzer-version-clippy1.86.0
analyzer-version-cppcheck2.17.1
analyzer-version-gcc15.0.1
analyzer-version-gcc-analyzer15.0.1
analyzer-version-shellcheck0.10.0
analyzer-version-unicontrol0.0.2
enabled-pluginsclippy, cppcheck, gcc, shellcheck, unicontrol
exit-code0
hostip-172-16-1-178.us-west-2.compute.internal
known-false-positives/usr/share/csmock/known-false-positives.js
known-false-positives-rpmknown-false-positives-0.0.0.20250425.124705.g1c7c448.main-1.el9.noarch
mock-configfedora-rawhide-x86_64
project-namefreerdp-3.12.0-2.fc43
store-results-to/tmp/tmp43lnk2yq/freerdp-3.12.0-2.fc43.tar.xz
time-created2025-04-25 12:36:45
time-finished2025-04-25 12:43:11
toolcsmock
tool-args'/usr/bin/csmock' '-r' 'fedora-rawhide-x86_64' '-t' 'unicontrol,cppcheck,gcc,clippy,shellcheck' '-o' '/tmp/tmp43lnk2yq/freerdp-3.12.0-2.fc43.tar.xz' '--gcc-analyze' '--unicontrol-notests' '--unicontrol-bidi-only' '--install' 'pam' '--gcc-analyzer-bin=/usr/bin/gcc' '/tmp/tmp43lnk2yq/freerdp-3.12.0-2.fc43.src.rpm'
tool-versioncsmock-3.8.1.20250422.172604.g26bc3d6-1.el9