Grazie stohuman per aver provato a testare il codice.
Molto probabilmente il crash era dovuto alla chiusura improvvisa del programma, dato che mi era "sfuggito" un commento di troppo nel comando
sleep(1) che scandiva la procedura.
Corretto il codice, ma il problema dell'allocazione rimane.
Ricordo di aver avuto problemi qualche tempo fa, con alcuni programmi che gestivano percorsi di files da linea da comando; non so perņ quanto questo possa incidere su semplici argomenti interi.
EDIT: Risolto, mancava il numero dei bytes da allocare nella
malloc!