Non so piu` cosa pensare.
Prova ad inserire degli alert per vedere come procede il flusso del programma: magari l'errore e` altrove ...