What IVR product are you using? IP IVR, UCCX, CVP, etc?
If you are using UCCX/IP IVR then you need to add an On Exception (contactInactiveException) step to your script. A script won't watch for caller abandonment unless you tell it to.
Example:
Start
Accept
On Exception (contactInactiveException) GoTo END
...script logic...
Terminate
LABEL: END
End
Note: Do NOT allow the exception to process any other steps besides End without a Clear Exception step. Doing so will cause an exception loop.