QTfrontend/hwform.cpp
changeset 672 08ed55ea1e2a
parent 668 0d7683a66d61
child 674 a15c8e3c69b3
--- a/QTfrontend/hwform.cpp	Sat Dec 15 22:57:22 2007 +0000
+++ b/QTfrontend/hwform.cpp	Sat Dec 15 23:24:43 2007 +0000
@@ -416,15 +416,24 @@
 
 void HWForm::NetStartServer()
 {
-  config->SaveOptions();
-  pnetserver = new HWNetServer;
-  pnetserver->StartServer(ui.pageNetServer->sbPort->value());
-  _NetConnect("localhost", pnetserver->getRunningPort(), ui.pageOptions->editNetNick->text());
+	config->SaveOptions();
 
-  if (ui.pageNet->rbLocalGame->isChecked())
-    pRegisterServer = new HWNetUdpServer(0, ui.pageNetServer->leServerDescr->text(), ui.pageNetServer->sbPort->value());
-  else
-    pRegisterServer = new HWNetWwwServer(0, ui.pageNetServer->leServerDescr->text(), ui.pageNetServer->sbPort->value());
+	pnetserver = new HWNetServer;
+	if(!pnetserver->StartServer(ui.pageNetServer->sbPort->value()))
+	{
+		QMessageBox::critical(0, tr("Error"),
+					tr("Unable to start the server"));
+		delete pnetserver;
+		pnetserver = 0;
+		return;
+	}
+
+	_NetConnect("localhost", pnetserver->getRunningPort(), ui.pageOptions->editNetNick->text());
+
+	if (ui.pageNet->rbLocalGame->isChecked())
+		pRegisterServer = new HWNetUdpServer(0, ui.pageNetServer->leServerDescr->text(), ui.pageNetServer->sbPort->value());
+	else
+		pRegisterServer = new HWNetWwwServer(0, ui.pageNetServer->leServerDescr->text(), ui.pageNetServer->sbPort->value());
 }
 
 void HWForm::NetDisconnect()