Whenever the left cannon is hit and shown as being destroyed on the damage overlay, it still works fine untill all ammo is gone (total ammo counter 0). I have observed it several times now.
The right cannon is fine, it stops firing after getting hit and in the end you have the appropriate number of rounds left over.