Originariamente inviato da MItaly
Come hai allocato data->mat?
Si scusa hai ragione sei stato anche troppo educato

codice:
bool getData (needed_data* data){
	//Alloco lo spazio necessario alle righe della matrice
	if((data->mat = (double**)malloc((data->num_var+1)*(sizeof(double*)))) == NULL){
		printf("\n\nErrore nell'allocazione delle righe della matrice o spazio insufficiente.\n\n");
		return FALSE;
	}

	//Alloco lo spazio necessario alle colonne della matrice (al più n+m+1 per le variabili artificiali)
	for (i=0; i<=data->num_var+1; i++)
		if((data->mat[i] = (double*)malloc((data->num_var+data->m+1)*sizeof(double))) == NULL){
			printf("\n\nErrore nell'allocazione delle colonne della matrice o spazio insufficiente.\n\n");
			return FALSE;
	}

return TRUE;
}