bug fix for an old bug in BufferedSink.cpp
This commit is contained in:
parent
9bca6850a7
commit
ccd4d54df8
|
@ -41,3 +41,4 @@ with contributions by:
|
||||||
Roland Hermans <roland.hermans@omroepvenray.nl>
|
Roland Hermans <roland.hermans@omroepvenray.nl>
|
||||||
Sergiy <piratfm@gmail.com>
|
Sergiy <piratfm@gmail.com>
|
||||||
Clemens Ladisch <clemens@ladisch.de>
|
Clemens Ladisch <clemens@ladisch.de>
|
||||||
|
Edwin van den Oetelaar <oetelaar.automatisering@gmail.com>
|
||||||
|
|
|
@ -1,14 +1,18 @@
|
||||||
Next release
|
Next release
|
||||||
|
o fixed a bug in BufferedSink.cpp that leads to some buffers
|
||||||
|
being written twice, causing corruption of datastream,
|
||||||
|
thanks to Edwin van den Oetelaar <oetelaar.automatisering@gmail.com>
|
||||||
o implemented samplerate conversion for all codecs using libsamplerate,
|
o implemented samplerate conversion for all codecs using libsamplerate,
|
||||||
and keeping internal aflibConverter as fallback,
|
and keeping internal aflibConverter as fallback,
|
||||||
thanks to Sergiy <piratfm@gmail.com>
|
thanks to Sergiy <piratfm@gmail.com>
|
||||||
o bugfix: fix for alsa driver - closes ticked #8
|
o bugfix: fix for alsa driver - closes ticked #8
|
||||||
thanks to Clemens Ladisch <clemens@ladisch.de>
|
thanks to Clemens Ladisch <clemens@ladisch.de>
|
||||||
|
|
||||||
14-11-2009 Darkice 0.20.1 released
|
14-11-2009 Darkice 0.20.1 released
|
||||||
o added rc.darkice init script
|
o added rc.darkice init script
|
||||||
thanks to Niels Dettenbach <nd@syndicat.com>
|
thanks to Niels Dettenbach <nd@syndicat.com>
|
||||||
o bugfix: fix for gcc 4.4
|
o bugfix: fix for gcc 4.4
|
||||||
|
|
||||||
05-11-2009 Darkice 0.20 released
|
05-11-2009 Darkice 0.20 released
|
||||||
|
|
||||||
o new maintainer: Rafael Diniz <rafael@riseup.net>
|
o new maintainer: Rafael Diniz <rafael@riseup.net>
|
||||||
|
|
|
@ -330,10 +330,15 @@ BufferedSink :: write ( const void * buf,
|
||||||
|
|
||||||
// the internal buffer is empty, try to write the fresh data
|
// the internal buffer is empty, try to write the fresh data
|
||||||
soFar = 0;
|
soFar = 0;
|
||||||
if ( inp != outp ) {
|
if ( inp == outp ) {
|
||||||
while ( soFar < len && sink->canWrite( 0, 0) ) {
|
while ( soFar < len && sink->canWrite( 0, 0) ) {
|
||||||
soFar += sink->write( b + soFar, len - soFar);
|
try {
|
||||||
}
|
soFar += sink->write( b + soFar, len - soFar);
|
||||||
|
} catch (Exception &e) {
|
||||||
|
reportEvent(3,"Exception caught in BufferedSink :: write3\n");
|
||||||
|
throw; /* up a level */
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
length = soFar;
|
length = soFar;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue