ソースを参照

GUI bug on Lazarus + Windows

on Lazarus + Windows %p is invalid because ThreadID is not a pointer
PascalCoin 7 年 前
コミット
2e46b31a23
2 ファイル変更6 行追加3 行削除
  1. 4 2
      src/gui/UFRMLogs.pas
  2. 2 1
      src/gui/UFRMNodes.pas

+ 4 - 2
src/gui/UFRMLogs.pas

@@ -72,8 +72,10 @@ begin
       memoLogs.Lines.EndUpdate;
     end;
   end;
-  memoLogs.Lines.Add('%s %s %p [%s] <%s> %s',
-    [FormatDateTime('dd/mm/yyyy hh:nn:ss.zzz',Time), s, ThreadID, CT_LogType[Logtype], sender, logtext]);
+  //memoLogs.Lines.Add('%s %s %p [%s] <%s> %s',                                                             XXXXXXXXXXXXXXXX Windows %p is invalid (not a pointer)
+  //  [FormatDateTime('dd/mm/yyyy hh:nn:ss.zzz',Time), s, ThreadID, CT_LogType[Logtype], sender, logtext]); XXXXXXXXXXXXXXXX Windows %p is invalid (not a pointer)
+  memoLogs.Lines.Add('%s %s %s [%s] <%s> %s',
+    [FormatDateTime('dd/mm/yyyy hh:nn:ss.zzz',Time), s, IntToHex(PtrInt(ThreadID),8), CT_LogType[Logtype], sender, logtext]);
 end;
 
 end.

+ 2 - 1
src/gui/UFRMNodes.pas

@@ -220,7 +220,8 @@ begin
     strings.BeginUpdate;
     Try
       strings.Clear;
-      strings.Add('BlackList Updated: %s by TID: %p', [DateTimeToStr(now), TThread.CurrentThread.ThreadID]);
+//      strings.Add('BlackList Updated: %s by TID: %p', [DateTimeToStr(now), TThread.CurrentThread.ThreadID]);  XXXXXXXXXXXXXXXX Windows %p is invalid (not a pointer)
+      strings.Add('BlackList Updated: %s by TID: %s', [DateTimeToStr(now), IntToHex(PtrInt(TThread.CurrentThread.ThreadID),8)]);
       j := 0; n:=0;
       for i := 0 to l.Count - 1 do begin
         P := l[i];