Concurrent dialing doesn't seem to work with fxo lines

I’m trying the concurrent dial feature, which works like a champ when the lines are all fxs, but breaks when an fxo line is in the mix. More specifically, what I am doing is the following:

Dial(Zap/2&Zap/3)
or
Dial(Zap/2&Zap/4/19135551234)

In the first case, both channels are fxs. They ring concurrently, and when one of them answers the other stops ringing.

In the second case, one channel is fxs and the other is fxo. They both ring, but asterisk thinks the outside line answers (and hangs up the fxs channel), even though the outside line is still ringing. The console reports this:

– Called 2
– Called 4/19135551234
– Zap/2-1 is ringing
– Zap/2-1 is ringing
– Zap/4-1 answered Zap/1-1
– Hungup ‘Zap/2-1’
– Attempting native bridge of Zap/1-1 and Zap/4-1

I’ve noticed that * treats fxo and fxs channels quite differently. When I dial from one fxs channel to another * reports that the dialed channel is ringing until it is answered. When I dial an fxo channel, asterisk reports that the channel answered, even though it is still ringing.

Is it possible I have something configured wrong in zapata.conf, or is this just a limitation of asterisk?