On Monday, 20 June 2016 at 21:39:45 UTC, Joerg Joergonson wrote:
1810:
case 3:
auto arr = data.dup;
foreach(i; 0 .. arr.length) {
auto prev = i < bpp ? 0 : arr[i - bpp];
if (i >= previousLine.length) break;
arr[i] += cast(ubyte)
/*std.math.floor*/( cast(int) (prev + previousLine[i]) /
2);
}
adding
if (i >= previousLine.length) break;
prevents some crashes and seems to work.
You'd probably get better results by filing an issue with the
project's bug tracker [1]. Also by including a sample image that
causes the crash.
[1]: https://github.com/adamdruppe/arsd/issues