bpa wrote: > Station logos are in PNG format whereas program images are in JPG. > > If you set BBCiPlayer settings to "Always display station icon" - this > means only station logo will be shown. If no crashes happen > subsequently, then the issue is probably JPG related. > > My initial feeling is the issue might be related to libraries which are > built for non ARM maybe x86 type architecture. Some libraries have > special code for different processor architectures. However, I think > some images are resized before display so the underlying issue might not > be straightforward. > > edit: > > Squeezeplay on Ubuntu didn't crash when displaying station logo and > cycling through screeensavers - so I think it may be a JPG only issue. > > edit 2: > > It looks like the JPEG library in Squeezeplay is version 6b which is > from 1998 ! > Current version is 9c but intermediate revs are still available at > https://www.ijg.org/files/ The touch and radio appear to be using 8b at least that's what the poky build environment used when I rebuild the radio firmware.
So, I rebuilt squeezeplay on my linux system using jpeg 9c and libpng 1.2.59 but it still crashes as before cycling to the art only now playing screen. Code: -------------------- jive: malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed. -------------------- Interestingly, when I build squeezeplay using dmalloc to help track this down, it never crashes. Unfortunately, I haven't figured out how to debug/step through the lua code to try to find where this is happening. gdb traceback isn't very helpful either and valgrind reports the something has clobbered memory but it's happening way down in SDL so finding the source of the corruption isn't forthcoming. Code: -------------------- ==9436== Invalid write of size 4 ==9436== at 0x43396E6: SDL_FillRect (SDL_surface.c:610) ==9436== by 0x432554E: SDL_UnRLESurface (SDL_RLEaccel.c:1915) ==9436== by 0x4338355: SDL_MapSurface (SDL_pixels.c:551) ==9436== by 0x433910C: SDL_LowerBlit (SDL_surface.c:417) ==9436== by 0x12C012B: ??? ==9436== Address 0x9e174e8 is 0 bytes after a block of size 360,000 alloc'd ==9436== at 0x4028308: malloc (vg_replace_malloc.c:263) ==9436== by 0x4325518: SDL_UnRLESurface (SDL_RLEaccel.c:1907) ==9436== by 0x4338355: SDL_MapSurface (SDL_pixels.c:551) ==9436== by 0x433910C: SDL_LowerBlit (SDL_surface.c:417) ==9436== by 0x12C012B: ??? ==9436== valgrind: m_mallocfree.c:266 (mk_plain_bszB): Assertion 'bszB != 0' failed. valgrind: This is probably caused by your program erroneously writing past the end of a heap block and corrupting heap metadata. If you fix any invalid writes reported by Memcheck, this assertion failure will probably go away. Please try that before reporting this as a bug. -------------------- Perhaps the image handling is misleading. The long text strings are what's really different with the iplayer plugin. Ralphy *1*-Touch, *5*-Classics, *3*-Booms, *1*-UE Radio 'Squeezebox client builds' (https://sourceforge.net/projects/lmsclients/files/) 'donations' (https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=LL5P6365KQEXN&lc=CA&item_name=Squeezebox%20client%20builds¤cy_code=USD&bn=PP%2dDonationsBF%3abtn_donate_SM%2egif%3aNonHosted) always appreciated. ------------------------------------------------------------------------ ralphy's Profile: http://forums.slimdevices.com/member.php?userid=3484 View this thread: http://forums.slimdevices.com/showthread.php?t=96328 _______________________________________________ discuss mailing list discuss@lists.slimdevices.com http://lists.slimdevices.com/mailman/listinfo/discuss