aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ui/qmmpstarter.cpp7
-rw-r--r--src/ui/qmmpstarter.h1
2 files changed, 6 insertions, 2 deletions
diff --git a/src/ui/qmmpstarter.cpp b/src/ui/qmmpstarter.cpp
index 886828550..462329bb5 100644
--- a/src/ui/qmmpstarter.cpp
+++ b/src/ui/qmmpstarter.cpp
@@ -19,6 +19,8 @@
***************************************************************************/
#include <QApplication>
+#include <QLocalServer>
+#include <QLocalSocket>
#include <cstdlib>
#include <iostream>
@@ -34,7 +36,6 @@
#include "qmmpstarter.h"
#include "builtincommandlineoption.h"
-#define MAXCOMMANDSIZE 102400
#define UDS_PATH QString("/tmp/qmmp.sock.%1").arg(getuid()).toAscii().constData()
using namespace std;
@@ -135,7 +136,7 @@ void QMMPStarter::readCommand()
{
#ifndef Q_OS_WIN32
QByteArray inputArray;
- inputArray.resize(MAXCOMMANDSIZE);
+ inputArray.resize(m_sock->pendingDatagramSize ());
bzero(inputArray.data(),inputArray.size());
m_sock->readDatagram(inputArray.data(), inputArray.size());
QStringList slist = QString::fromUtf8(inputArray.data()).split("\n",QString::SkipEmptyParts);
@@ -144,6 +145,8 @@ void QMMPStarter::readCommand()
{
mw->processCommandArgs(slist,cwd);
}
+ if(m_sock->pendingDatagramSize () > 0)
+ readCommand();
#endif
}
diff --git a/src/ui/qmmpstarter.h b/src/ui/qmmpstarter.h
index 022031b2a..e886980da 100644
--- a/src/ui/qmmpstarter.h
+++ b/src/ui/qmmpstarter.h
@@ -61,6 +61,7 @@ private:
void printVersion();
void startMainWindow();
+
private:
MainWindow* mw;
UnixDomainSocket* m_sock;