Witam mam funkcje która odczytuje plik do list:

 void openfromfile(string name, cd*&head)
{
	cd*head1;
	ifstream plik;
	plik.open(name);
	if (!plik.is_open())
	{
		head = NULL;
		return;
	}

	else {

		string dana;
		while (!plik.eof())
		{
			plik >> dana;
			head1= dodsortcd(head, dana);
			plik >> dana;
			while (dana != ";")
			{
				dodajsorts(head1->first, dana);
				plik >> dana;
			}

		}

	}
	plik.close();
}

Ale kiedy,np plik się nie odczyta,to wtedy dalszy program sie nie wykonuje.Np w mainie mam wywołanie tej funkcji po tym zaraz jakikolwiek cout i nic się nie pojawia,a kiedy w pliku jest coś to działa normalnie,nie mam pojęcia co jest nie tak..