summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorphintuka <phintuka>2010-01-06 08:00:58 +0000
committerphintuka <phintuka>2010-01-06 08:00:58 +0000
commite7e8929388530020de26245bae61e7d8b415744e (patch)
tree232442d6282d964b0eaca9184f330087648a6ff5
parente02e753706544261fc5c236e3ec4bde3650f648e (diff)
downloadxineliboutput-e7e8929388530020de26245bae61e7d8b415744e.tar.gz
xineliboutput-e7e8929388530020de26245bae61e7d8b415744e.tar.bz2
Use local variable for buffer size
-rw-r--r--xine/BluRay/xine_lpcm_decoder.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/xine/BluRay/xine_lpcm_decoder.c b/xine/BluRay/xine_lpcm_decoder.c
index 2993e514..1bf52141 100644
--- a/xine/BluRay/xine_lpcm_decoder.c
+++ b/xine/BluRay/xine_lpcm_decoder.c
@@ -89,6 +89,7 @@ static void lpcm_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) {
lpcm_decoder_t *this = (lpcm_decoder_t *) this_gen;
int16_t *sample_buffer=(int16_t *)buf->content;
+ int buf_size = buf->size;
int stream_be;
audio_buffer_t *audio_buffer;
int format_changed = 0;
@@ -205,14 +206,14 @@ static void lpcm_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) {
if( this->bits_per_sample == 16 ){
if (stream_be != this->cpu_be)
- swab (sample_buffer, audio_buffer->mem, buf->size);
+ swab (sample_buffer, audio_buffer->mem, buf_size);
else
- memcpy (audio_buffer->mem, sample_buffer, buf->size);
+ memcpy (audio_buffer->mem, sample_buffer, buf_size);
}
else if( this->bits_per_sample == 20 ) {
uint8_t *s = (uint8_t *)sample_buffer;
uint8_t *d = (uint8_t *)audio_buffer->mem;
- int n = buf->size;
+ int n = buf_size;
if (stream_be != this->cpu_be) {
while( n >= 0 ) {
@@ -232,7 +233,7 @@ static void lpcm_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) {
} else if( this->bits_per_sample == 24 ) {
uint8_t *s = (uint8_t *)sample_buffer;
uint8_t *d = (uint8_t *)audio_buffer->mem;
- int n = buf->size;
+ int n = buf_size;
while (n >= 3) {
if ( stream_be ) {
@@ -259,15 +260,15 @@ static void lpcm_decode_data (audio_decoder_t *this_gen, buf_element_t *buf) {
n -= 3;
}
- if ( (d - (uint8_t*)audio_buffer->mem)/2*3 < buf->size )
- xprintf(this->stream->xine, XINE_VERBOSITY_DEBUG, "lpcm_decoder: lost %i bytes\n", (int)(buf->size - (d - (uint8_t*)audio_buffer->mem))/2*3);
+ if ( (d - (uint8_t*)audio_buffer->mem)/2*3 < buf_size )
+ xprintf(this->stream->xine, XINE_VERBOSITY_DEBUG, "lpcm_decoder: lost %i bytes\n", (int)(buf_size - (d - (uint8_t*)audio_buffer->mem))/2*3);
} else {
- memcpy (audio_buffer->mem, sample_buffer, buf->size);
+ memcpy (audio_buffer->mem, sample_buffer, buf_size);
}
audio_buffer->vpts = buf->pts;
- audio_buffer->num_frames = (((buf->size*8)/this->number_of_channels)/this->bits_per_sample);
+ audio_buffer->num_frames = (((buf_size*8)/this->number_of_channels)/this->bits_per_sample);
this->stream->audio_out->put_buffer (this->stream->audio_out, audio_buffer, this->stream);