Salve a tutti programmatori

Ho creato un programma per gestire un lista di films scritta su un qualsiasi file(file scritto in modo da avere un titolo di film per riga).
Ora il programma funziona alla perfezione se acquisisce un file con meno di 36 films.

Dal 36° in poi crasha inesorabilmente.... se sfora di poco si blocca lì mentre se il file supera i 70-80 interviene addirittura windows con una segnalazione errore.


Ora provando a debuggare noto che il porgramma riesce a gestire files con + dei fatidici 35 nomi senza problemi tranne nel bloccarsi in uscita.


Cosa potrebbe causare questo problema?

Il funzionamento in poche riga del programma è memorizzare i films dinamicamente in questo modo:


Questo array poi viene gestito per riordinarlo, modificarlo, ecc.


Visto che il programma crasha subito quando crea l'array ( tranne quando è in modalità debugger ) il problema dovrebbe essere lì.

Il codice per generare il puntatore all'array di puntatori è questo:
codice:
char** array = new char*[num];
//num = numero films ricavato visualizzando una volta
il contenuto del file, questo lo senza problemi sempre.

A naso cosa potrebbe essere?
Eventualmente vi do pezzi di codice da vedere

Aiutatemi per favore che devo debuggarlo per giovedì prossimo