aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/blind-cat-cols.c23
-rw-r--r--src/blind-cat-rows.c23
2 files changed, 22 insertions, 24 deletions
diff --git a/src/blind-cat-cols.c b/src/blind-cat-cols.c
index e20e913..ef7d15e 100644
--- a/src/blind-cat-cols.c
+++ b/src/blind-cat-cols.c
@@ -1,26 +1,25 @@
/* See LICENSE file for copyright and license details. */
#include "common.h"
-USAGE("(file columns) ...")
+USAGE("file ...")
int
main(int argc, char *argv[])
{
struct stream *streams;
- size_t parts, width = 0, *cols, i;
+ size_t width = 0, *cols;
+ int i;
- UNOFLAGS(argc % 2 || !argc);
+ UNOFLAGS(!argc);
- parts = (size_t)argc / 2;
- streams = emalloc2(parts, sizeof(*streams));
- cols = alloca(parts * sizeof(*cols));
+ streams = emalloc2((size_t)argc, sizeof(*streams));
+ cols = alloca((size_t)argc * sizeof(*cols));
- for (i = 0; i < parts; i++) {
- eopen_stream(streams + i, argv[i * 2]);
- cols[i] = etozu_arg("columns", argv[i * 2 + 1], 1, SIZE_MAX);
+ for (i = 0; i < argc; i++) {
+ eopen_stream(streams + i, argv[i]);
if (streams[i].width > SIZE_MAX - width)
eprintf("output video is too tall\n");
- width += streams[i].width;
+ width += cols[i] = streams[i].width;
if (i) {
streams[i].width = streams->width;
echeck_compat(streams, streams + i);
@@ -31,10 +30,10 @@ main(int argc, char *argv[])
fprint_stream_head(stdout, streams);
efflush(stdout, "<stdout>");
- for (i = 0; i < parts; i++, i = i == parts ? 0 : i)
+ for (i = 0; i < argc; i++, i = i == argc ? 0 : i)
if (esend_pixels(streams + i, STDOUT_FILENO, cols[i], "<stdout>") != cols[i])
break;
- for (i = 0; i < parts; i++)
+ for (i = 0; i < argc; i++)
close(streams[i].fd);
free(streams);
diff --git a/src/blind-cat-rows.c b/src/blind-cat-rows.c
index 32113e5..a41655c 100644
--- a/src/blind-cat-rows.c
+++ b/src/blind-cat-rows.c
@@ -1,26 +1,25 @@
/* See LICENSE file for copyright and license details. */
#include "common.h"
-USAGE("(file rows) ...")
+USAGE("file ...")
int
main(int argc, char *argv[])
{
struct stream *streams;
- size_t parts, height = 0, *rows, i;
+ size_t height = 0, *rows;
+ int i;
- UNOFLAGS(argc % 2 || !argc);
+ UNOFLAGS(!argc);
- parts = (size_t)argc / 2;
- streams = emalloc2(parts, sizeof(*streams));
- rows = alloca(parts * sizeof(*rows));
+ streams = emalloc2((size_t)argc, sizeof(*streams));
+ rows = alloca((size_t)argc * sizeof(*rows));
- for (i = 0; i < parts; i++) {
- eopen_stream(streams + i, argv[i * 2]);
- rows[i] = etozu_arg("rows", argv[i * 2 + 1], 1, SIZE_MAX);
+ for (i = 0; i < argc; i++) {
+ eopen_stream(streams + i, argv[i]);
if (streams[i].height > SIZE_MAX - height)
eprintf("output video is too wide\n");
- height += streams[i].height;
+ height += rows[i] = streams[i].height;
if (i) {
streams[i].height = streams->height;
echeck_compat(streams, streams + i);
@@ -31,10 +30,10 @@ main(int argc, char *argv[])
fprint_stream_head(stdout, streams);
efflush(stdout, "<stdout>");
- for (i = 0; i < parts; i++, i = i == parts ? 0 : i)
+ for (i = 0; i < argc; i++, i = i == argc ? 0 : i)
if (esend_rows(streams + i, STDOUT_FILENO, rows[i], "<stdout>") != rows[i])
break;
- for (i = 0; i < parts; i++)
+ for (i = 0; i < argc; i++)
close(streams[i].fd);
free(streams);