diff --git a/include/dsp/samplefifo.h b/include/dsp/samplefifo.h
index 6fb05a748..24a2a6146 100644
--- a/include/dsp/samplefifo.h
+++ b/include/dsp/samplefifo.h
@@ -47,6 +47,7 @@ public:
~SampleFifo();
bool setSize(int size);
+ inline uint size() const { return m_size; }
inline uint fill() const { return m_fill; }
uint write(const quint8* data, uint count);
diff --git a/plugins/samplesource/filesource/filesourcegui.ui b/plugins/samplesource/filesource/filesourcegui.ui
index 938e6147a..382bb1968 100644
--- a/plugins/samplesource/filesource/filesourcegui.ui
+++ b/plugins/samplesource/filesource/filesourcegui.ui
@@ -205,14 +205,14 @@
- :/pause.png
- :/play.png
+ :/play.png
+ :/pause.png
:/stop.png
:/stop.png
- :/pause.png
- :/play.png
- :/pause.png
- :/play.png:/pause.png
+ :/play.png
+ :/pause.png
+ :/play.png
+ :/pause.png:/pause.png
diff --git a/plugins/samplesource/filesource/filesourceinput.cpp b/plugins/samplesource/filesource/filesourceinput.cpp
index b8229f03b..99dde4650 100644
--- a/plugins/samplesource/filesource/filesourceinput.cpp
+++ b/plugins/samplesource/filesource/filesourceinput.cpp
@@ -102,6 +102,11 @@ bool FileSourceInput::startInput(int device)
std::cerr << "FileSourceInput::startInput" << std::endl;
QMutexLocker mutexLocker(&m_mutex);
+ if(!m_sampleFifo.setSize(96000 * 4)) {
+ qCritical("Could not allocate SampleFifo");
+ return false;
+ }
+
openFileStream();
if((m_fileSourceThread = new FileSourceThread(&m_ifstream, &m_sampleFifo)) == NULL) {