From 6b998b5ed066aeece1146fe245b35965319b3cbd Mon Sep 17 00:00:00 2001 From: Mattias Andrée Date: Wed, 10 May 2017 16:59:26 +0200 Subject: Cleaner code MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Mattias Andrée --- src/blind-translate.c | 46 ++++++++++++++++++++-------------------------- 1 file changed, 20 insertions(+), 26 deletions(-) (limited to 'src/blind-translate.c') diff --git a/src/blind-translate.c b/src/blind-translate.c index d8f44e2..6b0ebd8 100644 --- a/src/blind-translate.c +++ b/src/blind-translate.c @@ -2,10 +2,7 @@ #include "stream.h" #include "util.h" -#include -#include #include -#include USAGE("[-wp] translation-stream") @@ -29,25 +26,24 @@ next_pixel(struct stream *stream, size_t *ptr) } static int -process_frame(struct stream *stream, char *buf, size_t n, - size_t above, size_t below, size_t left, size_t right) +process_frame(struct stream *stream, char *buf, size_t above, size_t below, size_t left, size_t right) { #define ZEROES(N) ewritezeroes(STDOUT_FILENO, zeroes, sizeof(zeroes), N, "") - size_t i, w = n - left - right; + size_t i, w = stream->row_size - left - right; int first = 1; - if (!eread_row(stream, buf, n)) + if (!eread_row(stream, buf)) return 0; for (i = 0; i < above; i++) - ZEROES(n); + ZEROES(stream->row_size); for (i = 0; i < below; i++, first = 0) - if (!first && !eread_row(stream, buf, n)) + if (!first && !eread_row(stream, buf)) goto eof; for (i = above + below; i < stream->height; i++, first = 0) { - if (!first && !eread_row(stream, buf, n)) + if (!first && !eread_row(stream, buf)) goto eof; ZEROES((size_t)left); ewriteall(STDOUT_FILENO, buf + right, w, ""); @@ -55,9 +51,9 @@ process_frame(struct stream *stream, char *buf, size_t n, } for (i = 0; i < below; i++) - ZEROES(n); + ZEROES(stream->row_size); for (i = 0; i < above; i++, first = 0) - if (!first && !eread_row(stream, buf, n)) + if (!first && !eread_row(stream, buf)) goto eof; return 1; @@ -70,16 +66,15 @@ static void process(struct stream *stream, struct stream *trstream) { char *buf; - size_t n, p = 0; + size_t p = 0; double *trans, tmp; ssize_t trx = 0, try = 0; size_t above = 0, below = 0, left = 0, right = 0; memset(zeroes, 0, sizeof(zeroes)); - echeck_frame_size(stream->width, 1, stream->pixel_size, 0, stream->file); - n = stream->width * stream->pixel_size; - buf = emalloc(n); + echeck_dimensions(stream, WIDTH, NULL); + buf = emalloc(stream->row_size); do { if ((trans = next_pixel(trstream, &p))) { @@ -93,10 +88,10 @@ process(struct stream *stream, struct stream *trstream) above = MIN(above, stream->height); below = MIN(below, stream->height); - left = MIN(left, n); - right = MIN(right, n); + left = MIN(left, stream->row_size); + right = MIN(right, stream->row_size); } - } while (process_frame(stream, buf, n, above, below, left, right)); + } while (process_frame(stream, buf, above, below, left, right)); free(buf); } @@ -105,16 +100,15 @@ static void process_wrap(struct stream *stream, struct stream *trstream) { char *buf, *row; - size_t n, rown, p = 0; + size_t p = 0; double *trans, tmp; ssize_t trx = 0, try = 0, py; size_t off = 0, y; - echeck_frame_size(stream->width, stream->height, stream->pixel_size, 0, ""); - n = stream->height * (rown = stream->width * stream->pixel_size); - buf = emalloc(n); + echeck_dimensions(stream, WIDTH | HEIGHT, NULL); + buf = emalloc(stream->frame_size); - while (eread_frame(stream, buf, n)) { + while (eread_frame(stream, buf)) { if ((trans = next_pixel(trstream, &p))) { trx = (ssize_t)(tmp = round(invtrans ? -trans[0] : trans[0])); try = (ssize_t)(tmp = round(invtrans ? -trans[1] : trans[1])); @@ -129,8 +123,8 @@ process_wrap(struct stream *stream, struct stream *trstream) py = ((ssize_t)y - try) % (ssize_t)stream->height; if (py < 0) py += (ssize_t)stream->height; - row = buf + (size_t)py * rown; - ewriteall(STDOUT_FILENO, row + off, rown - off, ""); + row = buf + (size_t)py * stream->row_size; + ewriteall(STDOUT_FILENO, row + off, stream->row_size - off, ""); ewriteall(STDOUT_FILENO, row, off, ""); } } -- cgit v1.2.3-70-g09d2