diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2011-03-31 22:27:39 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2011-03-31 22:27:39 +0200 |
commit | bd015df1e472968ad28099544740f7b7e514312e (patch) | |
tree | b535754145b5dfac8d9267a098795f7f2a2c276c /package/DirectFB/patches/patch-tools_directfb-csource_c | |
parent | f4e50548b0d41f5b4e6faae3ddc7283dd1a5dd6c (diff) |
add lxde components, update libpng and firefox
Diffstat (limited to 'package/DirectFB/patches/patch-tools_directfb-csource_c')
-rw-r--r-- | package/DirectFB/patches/patch-tools_directfb-csource_c | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/package/DirectFB/patches/patch-tools_directfb-csource_c b/package/DirectFB/patches/patch-tools_directfb-csource_c new file mode 100644 index 000000000..84711d86f --- /dev/null +++ b/package/DirectFB/patches/patch-tools_directfb-csource_c @@ -0,0 +1,48 @@ +--- DirectFB-1.4.11.orig/tools/directfb-csource.c 2010-10-31 09:49:49.000000000 +0100 ++++ DirectFB-1.4.11/tools/directfb-csource.c 2011-03-29 10:57:18.453068981 +0200 +@@ -338,7 +338,7 @@ static DFBResult load_image (const char + if (!png_ptr) + goto cleanup; + +- if (setjmp (png_ptr->jmpbuf)) { ++ if (setjmp (png_jmpbuf (png_ptr))) { + if (desc->preallocated[0].data) { + free (desc->preallocated[0].data); + desc->preallocated[0].data = NULL; +@@ -405,17 +405,22 @@ static DFBResult load_image (const char + } + + switch (src_format) { +- case DSPF_LUT8: +- if (info_ptr->num_palette) { ++ case DSPF_LUT8: { ++ png_colorp png_palette; ++ int num_palette; ++ ++ png_get_PLTE( png_ptr, info_ptr, &png_palette, &num_palette ); ++ ++ if (num_palette) { + png_byte *alpha; + int i, num; + +- *palette_size = MIN (info_ptr->num_palette, 256); ++ *palette_size = MIN (num_palette, 256); + for (i = 0; i < *palette_size; i++) { + palette[i].a = 0xFF; +- palette[i].r = info_ptr->palette[i].red; +- palette[i].g = info_ptr->palette[i].green; +- palette[i].b = info_ptr->palette[i].blue; ++ palette[i].r = png_palette[i].red; ++ palette[i].g = png_palette[i].green; ++ palette[i].b = png_palette[i].blue; + } + if (png_get_valid (png_ptr, info_ptr, PNG_INFO_tRNS)) { + png_get_tRNS (png_ptr, info_ptr, &alpha, &num, NULL); +@@ -424,6 +429,7 @@ static DFBResult load_image (const char + } + } + break; ++ } + case DSPF_RGB32: + png_set_filler (png_ptr, 0xFF, + #ifdef WORDS_BIGENDIAN |