Re: Access Violation in HTTP Server

Giganews Newsgroups
Subject: Re: Access Violation in HTTP Server
Posted by:  Remy Lebeau (TeamB) (no.spam@no.spam.com)
Date: Fri, 20 Jul 2007

"Darius" <d.dzi…@gazeta.pl> wrote in message
news:8E640623722EE340d.dzi…@gazeta.pl...

> Hi, I've got following AV in my Indy HTTP Server,
> when client process suddenly crashes during the
> connection:

You did not say which build of Indy 10 you are using.

> 7c918fea +5b ntdll.dll                    RtlpWaitForCriticalSection
> 7c901046 +41 ntdll.dll                    RtlEnterCriticalSection
> 0046dd97 +07 nVision.exe Classes          TThreadList.LockList
> 0046ddb1 +0d nVision.exe Classes          TThreadList.Remove
> 0093123c +14 nVision.exe IdContext 150 +2 TIdContext.Destroy

When the client connection is lost, the server terminates the thread for it,
which destroys the TIdContext associated with the connection.  The stack
trace is saying that the crash is occuring when the TIdContext is trying to
remove itself from the server's Contexts list.  Which means the TThreadList
point inside inside the TIdContext is invalid.  Since you are getting an AV
at such a low memory address, that suggests the TThreadList pointer is nil.
But TIdContext's destructor checks for nil, unless you are using a really
old build that wasn't.

Gambit

Replies

In response to

Access Violation in HTTP Server posted by Darius on Fri, 20 Jul 2007