From 9e407964c15be487b70a84eeee46dde43ffc711e Mon Sep 17 00:00:00 2001 From: marc Date: Wed, 30 Jul 2003 21:56:32 +0000 Subject: [PATCH] * Fixed LM_APPENDTEXT buffer overrun git-svn-id: trunk@4438 - --- lcl/interfaces/win32/win32object.inc | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/lcl/interfaces/win32/win32object.inc b/lcl/interfaces/win32/win32object.inc index 0420101d9f..ce1015b93d 100644 --- a/lcl/interfaces/win32/win32object.inc +++ b/lcl/interfaces/win32/win32object.inc @@ -369,6 +369,7 @@ Var LVI: LV_ITEM; PStr, PStr2: PChar; R, R2: TRECT; + S: String; //SelectionMode: DWORD; // currently only used for listboxes TBB: TBBUTTON; WindowStyle: Integer; //used by LM_SETTABPOSITION @@ -411,9 +412,12 @@ Begin //SH: think of TBitmap.handle!!!! LM_APPENDTEXT: Begin - PStr:=PChar((Sender as TMemo).Text); - StrCat(PStr, Data); - SetLabel(Sender, PStr); + if (Data <> nil) + and (PChar(Data)^ <> #0) + then begin + S := (Sender as TMemo).Text + PChar(Data); + SetLabel(Sender, PChar(S)); + end; End; LM_SCREENINIT: Begin @@ -2725,6 +2729,9 @@ End; { $Log$ + Revision 1.80 2003/07/30 21:56:32 marc + * Fixed LM_APPENDTEXT buffer overrun + Revision 1.79 2003/07/30 17:41:06 mattias added LM_APENDTEXT from Martin Smat