diff --git a/rtl/unix/cthreads.pp b/rtl/unix/cthreads.pp index 92aae01824..08e52dbcb6 100644 --- a/rtl/unix/cthreads.pp +++ b/rtl/unix/cthreads.pp @@ -494,6 +494,8 @@ Type PINTRTLEvent = ^TINTRTLEvent; {$endif} begin {$if defined(Linux) or defined(Android)} + if ThreadName = '' then + Exit; {$ifdef dynpthreads} if Assigned(pthread_setname_np) then {$endif dynpthreads} diff --git a/rtl/win/systhrd.inc b/rtl/win/systhrd.inc index 6ba68d421a..10bb07fda4 100644 --- a/rtl/win/systhrd.inc +++ b/rtl/win/systhrd.inc @@ -400,6 +400,9 @@ var procedure SysSetThreadDebugNameA(threadHandle: TThreadID; const ThreadName: AnsiString); begin {$ifndef WINCE} + if ThreadName = '' then + Exit; + if WinIsDebuggerPresent then begin RaiseMSVCExceptionMethod(threadHandle, ThreadName); @@ -417,6 +420,9 @@ var procedure SysSetThreadDebugNameU(threadHandle: TThreadID; const ThreadName: UnicodeString); begin {$ifndef WINCE} + if ThreadName = '' then + Exit; + if WinIsDebuggerPresent then begin RaiseMSVCExceptionMethod(threadHandle, AnsiString(ThreadName));