summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorManfred Tremmel <manfredtremmel@users.sourceforge.net>2004-02-22 16:47:30 +0000
committerManfred Tremmel <manfredtremmel@users.sourceforge.net>2004-02-22 16:47:30 +0000
commitb4939fe7b38818fc90ee16f72e5f67606b3e7e0a (patch)
tree0a6f63598fc13481405b6b8c2548f92129fe1ac3
parentb27f4fe6eb2afaa977c0dc600d6a13e5e9d426a6 (diff)
downloadxine-lib-b4939fe7b38818fc90ee16f72e5f67606b3e7e0a.tar.gz
xine-lib-b4939fe7b38818fc90ee16f72e5f67606b3e7e0a.tar.bz2
fixed a bug when displaying IFF-ILBM 24 Bit pictures
CVS patchset: 6183 CVS date: 2004/02/22 16:47:30
-rw-r--r--src/libxinevdec/bitplane.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/libxinevdec/bitplane.c b/src/libxinevdec/bitplane.c
index f97b2174a..05a4bea71 100644
--- a/src/libxinevdec/bitplane.c
+++ b/src/libxinevdec/bitplane.c
@@ -22,7 +22,7 @@
* suitable for display under xine. It's based on the rgb-decoder
* and the development documentation from the Amiga Developer CD
*
- * $Id: bitplane.c,v 1.3 2004/02/22 12:36:37 manfredtremmel Exp $
+ * $Id: bitplane.c,v 1.4 2004/02/22 16:47:30 manfredtremmel Exp $
*/
#include <stdio.h>
@@ -589,14 +589,14 @@ static void bitplane_decode_data (video_decoder_t *this_gen,
default:
break;
}
- if( this->bytes_per_pixel > 1 )
+ if( this->bytes_per_pixel > 1 ) {
bitplane_decode_bitplane( this->buf_uk, /* bitplane buffer */
this->rgb_buf, /* rgb buffer, direct 24Bit*/
this->width_decode, /* width */
this->height, /* hight */
this->num_bitplanes, /* number bitplanes */
this->bytes_per_pixel); /* used Bytes per pixel */
- else
+ } else {
bitplane_decode_bitplane( this->buf_uk, /* bitplane buffer */
this->index_buf, /* index buffer */
this->width_decode, /* width */
@@ -604,11 +604,12 @@ static void bitplane_decode_data (video_decoder_t *this_gen,
this->num_bitplanes, /* number bitplanes */
this->bytes_per_pixel); /* used Bytes per pixel */
- if( this->buf_uk_hist == NULL ) {
- this->buf_uk_hist = xine_xmalloc( (this->size_uk) );
- xine_fast_memcpy (this->buf_uk_hist, this->buf_uk, this->size_uk);
- xine_fast_memcpy (this->index_buf_hist, this->index_buf,
- (this->width_decode * this->height * this->bytes_per_pixel));
+ if( this->buf_uk_hist == NULL ) {
+ this->buf_uk_hist = xine_xmalloc( (this->size_uk) );
+ xine_fast_memcpy (this->buf_uk_hist, this->buf_uk, this->size_uk);
+ xine_fast_memcpy (this->index_buf_hist, this->index_buf,
+ (this->width_decode * this->height * this->bytes_per_pixel));
+ }
}
} else {
switch( anhd->operation ) {