summaryrefslogtreecommitdiffstats
path: root/clients/tde/src
diff options
context:
space:
mode:
Diffstat (limited to 'clients/tde/src')
-rw-r--r--clients/tde/src/app/remotemdi.cpp12
-rw-r--r--clients/tde/src/part/fpgaview/part.cpp6
2 files changed, 11 insertions, 7 deletions
diff --git a/clients/tde/src/app/remotemdi.cpp b/clients/tde/src/app/remotemdi.cpp
index 3ecf181..3e5c075 100644
--- a/clients/tde/src/app/remotemdi.cpp
+++ b/clients/tde/src/app/remotemdi.cpp
@@ -168,7 +168,11 @@ void RemoteMDI::connectToServer() {
connectionTimeout.stop();
if (m_rsvSvrSocket->state() == TQSocket::Connected) {
printf("[DEBUG] Initial connection established...\n\r"); fflush(stdout);
- if (m_rsvSvrSocket->setUsingKerberos(true) != 0) {
+ m_rsvSvrSocket->setUsingKerberos(true);
+ while (m_rsvSvrSocket->kerberosStatus() == TDEKerberosClientSocket::KerberosInitializing) {
+ tqApp->processEvents();
+ }
+ if (m_rsvSvrSocket->kerberosStatus() != TDEKerberosClientSocket::KerberosInUse) {
disconnectFromServer();
KMessageBox::error(this, i18n("<qt>Unable to establish Kerberos protocol with remote server<p>Please verify that you currently hold a valid Kerberos ticket</qt>"), i18n("Connection Failed"));
}
@@ -344,11 +348,7 @@ void RemoteMDI::childWindowCloseRequest(KMdiChildView *pWnd) {
iview->closeConnections();
iview->hide();
- // RAJA FIXME
- // Executing KMdiMainFrm::childWindowCloseRequest(pWnd) here will probably cause a crash
- // We need to call this AFTER control has been returned to the main event loop at least once
- // This is related to my lack of proper returning to the event loop, which MUST BE FIXED
-// KMdiMainFrm::childWindowCloseRequest(pWnd); // RAJA UNCOMMENT ME
+ KMdiMainFrm::childWindowCloseRequest(pWnd);
}
}
diff --git a/clients/tde/src/part/fpgaview/part.cpp b/clients/tde/src/part/fpgaview/part.cpp
index 52a1d92..2b3cf8d 100644
--- a/clients/tde/src/part/fpgaview/part.cpp
+++ b/clients/tde/src/part/fpgaview/part.cpp
@@ -158,8 +158,12 @@ printf("[RAJA DEBUG 200.1] In FPGAViewPart::connectToServer TRIED TO CONNECT TWI
if (m_socket->state() != TQSocket::Connected) {
return -1;
}
- if (m_socket->setUsingKerberos(true) != 0) {
+ m_socket->setUsingKerberos(true);
+ while (m_socket->kerberosStatus() == TDEKerberosClientSocket::KerberosInitializing) {
+ tqApp->eventLoop()->processEvents(TQEventLoop::AllEvents);
if (!m_socket) return -1; // Any entry into the event loop could end up deleting the socket object depending on user interaction
+ }
+ if (m_socket->kerberosStatus() != TDEKerberosClientSocket::KerberosInUse) {
m_socket->close();
KMessageBox::error(0, i18n("<qt>Unable to establish Kerberos protocol with remote server<p>Please verify that you currently hold a valid Kerberos ticket</qt>"), i18n("Connection Failed"));
return -1;