Incoming Call keeps ringing when the second call arrives

I am new to this group.I searched for my problem in the forum but could not find any solution. So here it goes:
In my work place we have an asterisk box, we use Asterisk 1.0.9. Everything works fine except the fact that when I first call the work phone number from my cell the auto-attendend works fine but If I hang-up and call the same number again, the call keeps ringing instead of auto-attendent answering.
I also watched the sequence of events from the asterisk console. Here is what’s hapenning:

Starting simple switch on 'Zap/3-1’
Executing Answer(“Zap/3-1”, “”) in new stack
Executing ResponseTimeout(“Zap/3-1”, “10”) in new stack
Set Response Timeout to 10
Executing BackGround(“Zap/3-1”, “mt-welcome”) in new stack[
Playing ‘mt-welcome’ (language ‘en’)
Executing Wait(“Zap/3-1”, “1”) in new stack
Executing Goto(“Zap/3-1”, “incomming|s|3”) in new stack
Goto (incomming,s,3)
Executing BackGround(“Zap/3-1”, “mt-welcome”) in new stack
Playing ‘mt-welcome’ (language ‘en’)
awn extension (incomming, s, 3) exited non-zero on 'Zap/3-1’
Executing Hangup(“Zap/3-1”, “”) in new stack
pawn extension (incomming, h, 1) exited non-zero on 'Zap/3-1’
Hungup ‘Zap/3-1’

I think I try to disconnect around the bold area when the automated message is playing.
So could you be kind enough to point me to the right direction to fix this problem?
Thanx in advance

it looks to me like zap doesn’t know when the other end has disconnected. what are you using for disconnection supervision ?

I am sorry, I am also new to asterisk. What do you mean by disconnection supervision? Is this related to some configuration in the extensions.conf?