summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--x11/ipc/client/ocopclient.cpp8
-rw-r--r--x11/ipc/server/ocopserver.cpp38
-rw-r--r--x11/libqpe-x11/qpe/qpeapplication.cpp4
-rw-r--r--x11/libqpe-x11/qt/qcopchannel_qws.cpp11
4 files changed, 34 insertions, 27 deletions
diff --git a/x11/ipc/client/ocopclient.cpp b/x11/ipc/client/ocopclient.cpp
index 91827e7..f59fa41 100644
--- a/x11/ipc/client/ocopclient.cpp
+++ b/x11/ipc/client/ocopclient.cpp
@@ -98,16 +98,16 @@ OCOPPacket OCOPClient::packet() const{
OCOPHead head;
memset(&head, 0, sizeof(head) );
read(m_socket, &head, sizeof(head) );
if ( head.magic == 47 ) {
- qWarning("Client:Magic Match");
+// qWarning("Client:Magic Match");
chan = QCString( head.chlen+1);
func = QCString( head.funclen+1 );
ar = QByteArray( head.datalen);
read(m_socket, chan.data(), head.chlen );
read(m_socket, func.data(), head.funclen );
read(m_socket, ar.data(), head.datalen );
- qWarning("Client:%d %s",head.chlen,chan.data() );
+// qWarning("Client:%d %s",head.chlen,chan.data() );
}
OCOPPacket pack(head.type, chan, func, ar );
return pack;
}
@@ -116,9 +116,9 @@ OCOPPacket OCOPClient::packet() const{
* so we send and go on read
* this will be blocked
*/
bool OCOPClient::isRegistered( const QCString& chan ) const{
- qWarning("OCopClient::isRegistered %s", chan.data() );
+// qWarning("OCopClient::isRegistered %s", chan.data() );
/* should I disconnect the socket notfier? */
OCOPPacket packe(OCOPPacket::IsRegistered, chan );
OCOPHead head = packe.head();
write(m_socket, &head, sizeof(head) );
@@ -136,9 +136,9 @@ bool OCOPClient::isRegistered( const QCString& chan ) const{
return false;
};
void OCOPClient::send( const QCString& chan, const QCString& fu, const QByteArray& arr ) {
- qWarning("ClientSending %s %s", chan.data(), fu.data() );
+// qWarning("ClientSending %s %s", chan.data(), fu.data() );
OCOPPacket pack(OCOPPacket::Call, chan, fu, arr );
call( pack );
}
void OCOPClient::addChannel(const QCString& channel) {
diff --git a/x11/ipc/server/ocopserver.cpp b/x11/ipc/server/ocopserver.cpp
index ee5ea18..992cb8c 100644
--- a/x11/ipc/server/ocopserver.cpp
+++ b/x11/ipc/server/ocopserver.cpp
@@ -30,9 +30,9 @@ void OCopServer::init() {
/*
* we set SIGPIPE to SIG_IGN
* to get EPIPE on reads ;)
*/
- qWarning("SIGPIPE to be ignored");
+// qWarning("SIGPIPE to be ignored");
signal(SIGPIPE, SIG_IGN );
/*
* initialize some variables
@@ -120,9 +120,9 @@ void OCopServer::newOnServer() {
* set SocketNotifier
* connect it
* and a OCOPClient
*/
- qWarning("Heureka new connection %d", fd );
+// qWarning("Heureka new connection %d", fd );
registerClient( fd );
}
@@ -193,10 +193,10 @@ void OCopServer::newOnClient( int fd ) {
OCOPPacket packet( head.type, channel, func, data );
dispatch( packet, fd );
}else{
- qWarning("magic does not match");
- qWarning("magic %d", head.magic );
+// qWarning("magic does not match");
+// qWarning("magic %d", head.magic );
}
}
void OCopServer::registerClient( int fd ) {
if (m_clients.contains(fd) )
@@ -208,9 +208,9 @@ void OCopServer::registerClient( int fd ) {
OCOPClient client;
client.fd = fd;
client.notify = notify;
m_clients.insert( client.fd, client );
- qWarning("clients are up to %d", m_clients.count() );
+// qWarning("clients are up to %d", m_clients.count() );
};
void OCopServer::deregisterClient(int fd ) {
QMap<int, OCOPClient>::Iterator it = m_clients.find( fd );
if (it != m_clients.end() ) {
@@ -228,18 +228,18 @@ void OCopServer::deregisterClient(int fd ) {
for ( it2 = m_channels.begin(); it2 != m_channels.end(); ++it2 ) {
/*
* The channel contains this fd
*/
- qWarning("Channel %s %d", it2.key().data(), it2.data().count() );
+// qWarning("Channel %s %d", it2.key().data(), it2.data().count() );
if ( it2.data().contains( fd ) ) {
qWarning("contains");
QValueList<int> array = it2.data();
/*
* remove channel or just replace
*/
if ( array.count() == 1 || array.count() == 0) {
- qWarning("Invalidate!");
+// qWarning("Invalidate!");
/* is the list now invalidatet? */
m_channels.remove( it2 );
/* That is the first go to of my life
* but Iterator remove( Iterator )
@@ -249,9 +249,9 @@ void OCopServer::deregisterClient(int fd ) {
* so the only way is to reiterate :(
*/
goto repeatIt;
}else{
- qWarning("removing count %d %d",fd, array.count() );
+// qWarning("removing count %d %d",fd, array.count() );
QValueList<int>::Iterator it3 = array.find( fd );
it3 = array.remove( it3 );
QCString key = it2.key().copy();
it2 = m_channels.replace( key, array );
@@ -262,16 +262,16 @@ void OCopServer::deregisterClient(int fd ) {
delete client.notify;
m_clients.remove(fd );
close(fd );
}
- qWarning("clients are now at %d", m_clients.count() );
-};
+// qWarning("clients are now at %d", m_clients.count() );
+}
/**
* this function will evaluate
* the package and then do the appropriate thins
*/
void OCopServer::dispatch( const OCOPPacket& packet, int sourceFD ) {
- qWarning("packet.type() == %d", packet.type() );
+// qWarning("packet.type() == %d", packet.type() );
switch( packet.type() ) {
case OCOPPacket::Register:
registerClient(sourceFD );
break;
@@ -299,9 +299,9 @@ void OCopServer::dispatch( const OCOPPacket& packet, int sourceFD ) {
/* not implemented :( */
case OCOPPacket::Signal:
break;
case OCOPPacket::IsRegistered:
- qWarning("Server:IsRegistered %s", packet.channel().data() );
+// qWarning("Server:IsRegistered %s", packet.channel().data() );
isRegistered( packet.channel(), sourceFD );
break;
};
}
@@ -332,9 +332,9 @@ void OCopServer::addChannel( const QCString& channel,
if ( it != m_channels.end() ) {
/* could be empty */
QValueList<int> list = it.data();
list.append( fd );
- qWarning("count is now in addChannel %d %s", list.count(), channel.data() );
+ qWarning("Server:count is now in addChannel %d %s", list.count(), channel.data() );
it = m_channels.replace( channel, list );
}else {
QValueList<int> ints;
ints.append( fd );
@@ -342,9 +342,9 @@ void OCopServer::addChannel( const QCString& channel,
}
};
void OCopServer::delChannel( const QCString& channel,
int fd ) {
- qWarning("remove %s, %d", channel.data(), fd );
+// qWarning("remove %s, %d", channel.data(), fd );
if (!m_channels.contains( channel ) )
return;
QMap<QCString, QValueList<int> >::Iterator it;
@@ -360,13 +360,13 @@ void OCopServer::delChannel( const QCString& channel,
rem = ints.remove( rem );
QCString str = it.key().copy();
m_channels.replace( str, ints );
}
- qWarning(" channel count is now %d", ints.count() );
+// qWarning(" channel count is now %d", ints.count() );
}
}
void OCopServer::isRegistered( const QCString& channel, int fd) {
- qWarning("Server:isRegistered %s", channel.data() );
+// qWarning("Server:isRegistered %s", channel.data() );
OCOPHead head;
QCString func(2);
memset(&head, 0, sizeof(head ) );
@@ -378,12 +378,12 @@ void OCopServer::isRegistered( const QCString& channel, int fd) {
if ( isChannelRegistered( channel ) ) {
//is registered
func[0] = 1;
- qWarning("Server:Channel is Registered %d", head.chlen);
+// qWarning("Server:Channel is Registered %d", head.chlen);
}else{
func[0] = 0;
- qWarning("Server:Channel is NotRegistered");
+// qWarning("Server:Channel is NotRegistered");
}
/**
* write the head
@@ -402,9 +402,9 @@ void OCopServer::call( const OCOPPacket& p, int ) {
QValueList<int>::Iterator it;
OCOPHead head = p.head();
for (it = cli.begin(); it != cli.end(); ++it ) {
- qWarning("Server:calling %d %s %s", (*it), p.channel().data(), p.header().data() );
+// qWarning("Server:calling %d %s %s", (*it), p.channel().data(), p.header().data() );
write( (*it), &head, sizeof(head ) );
/* expl. shared! */
write( (*it), p.channel().data(), p.channel().size() );
write( (*it), p.header().data(), p.header().size() );
diff --git a/x11/libqpe-x11/qpe/qpeapplication.cpp b/x11/libqpe-x11/qpe/qpeapplication.cpp
index 49115d8..c4f8f38 100644
--- a/x11/libqpe-x11/qpe/qpeapplication.cpp
+++ b/x11/libqpe-x11/qpe/qpeapplication.cpp
@@ -498,10 +498,10 @@ int QPEApplication::exec() {
}
void QPEApplication::internalSetStyle( const QString& ) {
}
-void QPEApplication::systemMessage( const QCString&, const QByteArray& ) {
-
+void QPEApplication::systemMessage( const QCString& chan, const QByteArray& ) {
+ qWarning("QPEApplication::systemMessage( %s )", chan.data() );
}
void QPEApplication::pidMessage( const QCString&, const QByteArray& ) {
}
diff --git a/x11/libqpe-x11/qt/qcopchannel_qws.cpp b/x11/libqpe-x11/qt/qcopchannel_qws.cpp
index 1cea80c..706756e 100644
--- a/x11/libqpe-x11/qt/qcopchannel_qws.cpp
+++ b/x11/libqpe-x11/qt/qcopchannel_qws.cpp
@@ -16,12 +16,15 @@ QCopChannel::QCopChannel( const QCString& channel, QObject* parent,
this, SLOT(rev(const QCString&, const QCString&, const QByteArray&) ) );
}
/* first registration or ref count is 0 for m_chan*/
if (!m_refCount.contains( m_chan ) || !m_refCount[m_chan] ) {
+ qWarning("adding channel %s", m_chan.data() );
m_refCount[m_chan] = 1;
OCOPClient::self()->addChannel( m_chan );
- }else
+ }else{
+ qWarning("reffing up for %s %d", m_chan.data(), m_refCount[m_chan] );
m_refCount[m_chan]++;
+ }
m_list->append(this);
}
void QCopChannel::receive( const QCString& msg, const QByteArray& ar ) {
@@ -44,9 +47,13 @@ QCopChannel::~QCopChannel() {
}
QCString QCopChannel::channel()const {
return m_chan;
}
-bool QCopChannel::isRegistered( const QCString& chan) {;
+bool QCopChannel::isRegistered( const QCString& chan) {
+ if (m_refCount.contains(chan) ) {
+ qDebug("Client:locally contains");
+ return true;
+ }
return OCOPClient::self()->isRegistered( chan );
}
bool QCopChannel::send( const QCString& chan, const QCString& msg ) {
QByteArray ar;