Package: meterbridge Version: 0.9.2-13 Severity: normal Tags: patch Dear Maintainer,
After upgrading libsdl1.2debian to version 1.2.64-5 (which is now a compatability wrapper for SDL 2.0) the meter background is not properly redrawn between each render of the meter's needle for ppm and vu meters. Copying the entirety of the image to the working buffer by passing NULL as the source and destination rect to SDL_BlitSurface seems to fix the issue. (Even though on the surface of things it looks like the previously used buf_rect should be appropriately set.) Cheers, Aaron -- System Information: Debian Release: trixie/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 6.4.0-3-amd64 (SMP w/12 CPU threads; PREEMPT) Kernel taint flags: TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8), LANGUAGE=en_AU:en Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages meterbridge depends on: ii jackd 5+nmu1 ii libc6 2.37-7 ii libjack-jackd2-0 [libjack-0.125] 1.9.21~dfsg-3 ii libsdl-image1.2 1.2.12-13+b2 ii libsdl1.2debian 1.2.64-5 meterbridge recommends no packages. meterbridge suggests no packages. -- no debconf information
Fix redrawing of background (broken by move to sdl12-compat) Index: meterbridge-0.9.2/src/ppm_meters.c =================================================================== --- meterbridge-0.9.2.orig/src/ppm_meters.c +++ meterbridge-0.9.2/src/ppm_meters.c @@ -48,7 +48,7 @@ int gfx_thread_ppm(void *foo) x2 = 89 + (int)(sinf(theta) * needle_len); y2 = 138 - (int)(cosf(theta) * needle_len); - SDL_BlitSurface(meter, buf_rect, meter_buf, buf_rect); + SDL_BlitSurface(meter, NULL, meter_buf, NULL); draw_ptr(meter_buf, x1, y1, x2, y2, needle, aa); SDL_BlitSurface(meter_buf, buf_rect, screen, buf_rect+i); } Index: meterbridge-0.9.2/src/vu_meters.c =================================================================== --- meterbridge-0.9.2.orig/src/vu_meters.c +++ meterbridge-0.9.2/src/vu_meters.c @@ -48,7 +48,7 @@ int gfx_thread_vu(void *foo) x2 = 108 + (int)(sinf(theta) * needle_len); y2 = 169 - (int)(cosf(theta) * needle_len); - SDL_BlitSurface(meter, buf_rect, meter_buf, buf_rect); + SDL_BlitSurface(meter, NULL, meter_buf, NULL); draw_ptr(meter_buf, x1, y1, x2, y2, needle, aa); draw_ptr(meter_buf, x1, y1, x2, y2, needle, aa); SDL_BlitSurface(meter_buf, buf_rect, screen, buf_rect+i);