diff --git a/src/libtomahawk/audio/MediaStream.cpp b/src/libtomahawk/audio/MediaStream.cpp index 895f09870..955c3be9f 100644 --- a/src/libtomahawk/audio/MediaStream.cpp +++ b/src/libtomahawk/audio/MediaStream.cpp @@ -150,7 +150,7 @@ MediaStream::readDoneCallback ( const char *cookie, size_t bufferSize, void *buf Q_UNUSED(bufferSize); if ( ( m_type == Stream ) && buffer != nullptr && bufferSize > 0 ) { - delete static_cast< char* >( buffer ); + delete[] reinterpret_cast< char* >( buffer ); } return 0; diff --git a/src/libtomahawk/audio/Qnr_IoDeviceStream.cpp b/src/libtomahawk/audio/Qnr_IoDeviceStream.cpp index 8d30447c2..d57844849 100644 --- a/src/libtomahawk/audio/Qnr_IoDeviceStream.cpp +++ b/src/libtomahawk/audio/Qnr_IoDeviceStream.cpp @@ -95,8 +95,11 @@ QNR_IODeviceStream::needData( void** buffer ) return 0; } - *buffer = new char[data.size()]; - memcpy(*buffer, data.data(), data.size()); + if ( data.size() > 0 ) + { + *buffer = new char[data.size()]; + memcpy(*buffer, data.data(), data.size()); + } return data.size(); }