summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetr Mladek <pmladek@suse.cz>2011-02-15 14:17:24 +0100
committerPetr Mladek <pmladek@suse.cz>2011-02-15 14:26:25 +0100
commitee4d096d9b9164b27153b25f0293f88363d27a1a (patch)
treec050708f0a7978b9614d9b6c6a7e5826e93c3994
parenta965c703f270a1ce8e1b00e26d7c60d4daebec99 (diff)
crashing oosplash and malformed picture (bnc#652562)
it was visible only on screens that did not use 32bpp Signed-off-by: Thorsten Behrens <thb@documentfoundation.org> Signed-off-by: Michael Meeks <michael.meeks@novell.com> Signed-off-by: Jan Holesovsky <kendy@suse.cz>
-rw-r--r--desktop/unx/source/splashx.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/desktop/unx/source/splashx.c b/desktop/unx/source/splashx.c
index 6e7088b42c..1c6ab45225 100644
--- a/desktop/unx/source/splashx.c
+++ b/desktop/unx/source/splashx.c
@@ -333,6 +333,7 @@ static void create_pixmap()
int x, y; \
for ( y = 0; y < height; ++y ) \
{ \
+ out = data + y * bytes_per_line; \
unsigned long red_delta = 0, green_delta = 0, blue_delta = 0; \
color_t *in = (color_t *)bitmap_rows[y]; \
for ( x = 0; x < width; ++x, ++in ) \
@@ -376,7 +377,7 @@ static void create_pixmap()
{
if ( machine_byte_order == byte_order && byte_order == LSBFirst )
COPY_IN_OUT( 3, *( (color_t *)out ) = *( (color_t *)( &pixel ) ); out += 3; )
- if ( machine_byte_order == byte_order && byte_order == MSBFirst )
+ else if ( machine_byte_order == byte_order && byte_order == MSBFirst )
COPY_IN_OUT( 3, uint32_t tmp = pixel;
*( (uint8_t *)out ) = *( (uint8_t *)(&tmp) + 1 );
*( (uint8_t *)out + 1 ) = *( (uint8_t *)(&tmp) + 2 );