Hola,
¿No puedes probar la aplicación paso por paso y ver en qué lugar exactamente "se va de madre"? Lo que se dice "depurar" el programa. Porque así, a bote pronto, uno no puede sino sorprenderse de ese comportamiento extraño, pero, no sabe qué decir. Bueno, acaso algún otro compañero pueda añadir algo más.