Thanks. As I mentioned earlier, it's been a while since I've spent any time in the ICS source. :(
I should have only included FRvcdCnt := 0; That will prevent TriggerSessionClosed from calling TriggerDataAvailable, and allow TCustomLineWSocket.Destroy to free the buffer, rather than having multiple code snippets that free the buffer, which could lead to a bug later if all of the code snippets are not kept in sync when something changes. On Sun, Mar 28, 2010 at 11:50 PM, Francois PIETTE <francois.pie...@skynet.be > wrote: > I like Francois' idea to implement TCustomLineWSocket.InternalAbort and use >> it to clear TCustomLineWSocket's buffer, doing some or all of: >> FRcvdPtr := nil; >> FRcvBufSize := 0; >> FRcvdCnt := 0; >> >> At a minimum, setting FRcvdCnt := 0 will prevent TriggerSessionClosed from >> calling TriggerDataAvailable; >> > > You are forgetting to free the memory. See TCustomLineWSocket.Destroy about > how to do it properly. > > -- > francois.pie...@overbyte.be > The author of the freeware multi-tier middleware MidWare > The author of the freeware Internet Component Suite (ICS) > http://www.overbyte.be > > > -- > To unsubscribe or change your settings for TWSocket mailing list > please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket > Visit our website at http://www.overbyte.be > -- Jon Robertson Borland Certified Advanced Delphi 7 Developer Good programming is 40% experience, 30% skill, 20% RTFM, 10% caffeine, and 5% attention to detail. -- To unsubscribe or change your settings for TWSocket mailing list please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be