mirror of
https://github.com/termux/termux-packages.git
synced 2025-02-22 16:57:09 +00:00
Fixes "`error: incomplete definition of type 'struct _win_st'`" during
build.
Progress on https://github.com/termux/termux-packages/issues/21130
Copied and pasted from 05e22fdc66
`0005-aalib-m4.patch`: Fix --with-aalib-prefix argument
`0006-aalib-c99.patch`: Fix builtin-declaration-mismatch compiler warnings
`0007-aalib-free-offset-pointer.patch`: Fix free-nonheap-object compiler warning
`0008-aalib-key-down-OOB.patch`: Fix aggressive-loop-optimizations compiler warning
`0009-aalib-aalinuxkbd-return.patch`: Fix 'return' with no value compiler warning
`0010-aalib-opaque-ncurses-fix.patch`: Fix build for ncurses built with opaque-curses option
`0011-aalib-fix-aarender.patch`: Fix rendering with custom aspect ratio
`0012-aalib-mouse.patch`: Fix typo for KEY_MOUSE condition
35 lines
1.3 KiB
Diff
35 lines
1.3 KiB
Diff
This bug can be seen very clearly with e.g. mplayer -vo aa -monitoraspect 3
|
|
in which case a big part of the picture is missing or there is even completely
|
|
black output.
|
|
|
|
The reason for this is, when drawing only a part of the picture via aarender()
|
|
the first X coordinate is used for the loop count, but it is not applied to the
|
|
destination and source image index, thus instead of (re)drawing the middle part
|
|
of the image, it draws always the left part.
|
|
|
|
Actual Results:
|
|
only the left part of the image is draw (depending on the video, only the left
|
|
black bar might be draw, so you will see nothing at all - if so use a slightly
|
|
smaller value for -monitoraspect).
|
|
|
|
Expected Results:
|
|
All of the image should be drawn, and -monitoraspect should only squeeze the
|
|
image, not cause part of it to miss.
|
|
|
|
Gentoo-bug: http://bugs.gentoo.org/id=214142
|
|
Reported-by: Reimar Döffinger
|
|
Fixed-by: Reimar Döffinger
|
|
--- a/src/aarender.c.orig 2008-03-18 23:55:32.000000000 +0100
|
|
+++ b/src/aarender.c 2008-03-18 23:55:50.000000000 +0100
|
|
@@ -94,8 +94,8 @@
|
|
gamma = randomval / 2;
|
|
mval = (c->parameters[c->filltable[255]].p[4]);
|
|
for (y = y1; y < y2; y++) {
|
|
- pos = 2 * y * wi;
|
|
- pos1 = y * aa_scrwidth(c);
|
|
+ pos = 2 * (y * wi + x1);
|
|
+ pos1 = y * aa_scrwidth(c) + x1;
|
|
esum = 0;
|
|
for (x = x1; x < x2; x++) {
|
|
i1 = table[((((int) c->imagebuffer[pos])))];
|