After Upgrading to Asterisk 1.4 and RC1 of freePBX, I found that the internal directory didn’t work. There is apparently a change of syntax from 1.2 to 1.4 for this.
As a work-around I added the following to the end of extension_custom.conf
exten => s,1,Answer
exten => s,2,Wait(1)
exten => s,3,Directory(default)
exten => s,4,Hangup
created a misc application using custom-directory,s,1 and pointed all my IVR’s, etc. that use the internal directory to the new misc-application.