diff options
| author | Laurent Bercot <ska-skaware@skarnet.org> | 2026-04-01 00:46:57 +0000 |
|---|---|---|
| committer | Laurent Bercot <ska-skaware@skarnet.org> | 2026-04-01 00:46:57 +0000 |
| commit | 8c7ea8f92ad0a21d3a1aefb03699b99555ff1a3c (patch) | |
| tree | a3d8558e978eb9e64a85ed2ea1d306598c2bea87 | |
| parent | b47da70b421dee0454c91f4f63102db46262c061 (diff) | |
| download | skalibs-8c7ea8f92ad0a21d3a1aefb03699b99555ff1a3c.tar.gz | |
Support null .lo in gol
| -rw-r--r-- | src/include/skalibs/prog.h | 1 | ||||
| -rw-r--r-- | src/libstddjb/gol.c | 4 |
2 files changed, 3 insertions, 2 deletions
diff --git a/src/include/skalibs/prog.h b/src/include/skalibs/prog.h index de23e1f..898e690 100644 --- a/src/include/skalibs/prog.h +++ b/src/include/skalibs/prog.h @@ -4,6 +4,7 @@ #define SKALIBS_PROG_H #include <stddef.h> + #include <skalibs/types.h> extern char const *PROG ; diff --git a/src/libstddjb/gol.c b/src/libstddjb/gol.c index 93ebe79..7b500e7 100644 --- a/src/libstddjb/gol.c +++ b/src/libstddjb/gol.c @@ -20,13 +20,13 @@ int gol (char const *const *argv, gol_bool const *b, unsigned int bn, gol_arg co { size_t len = x - argv[i] - 2 ; if (!len) return (*problem = 0, -1-i) ; - for (; j < an ; j++) if (!strncmp(argv[i] + 2, a[j].lo, len) && !a[j].lo[len]) break ; + for (; j < an ; j++) if (a[j].lo && !strncmp(argv[i] + 2, a[j].lo, len) && !a[j].lo[len]) break ; if (j >= an) return (*problem = -len-2, -1-i) ; ar[a[j].i] = x + 1 ; } else { - for (; j < bn ; j++) if (!strcmp(argv[i] + 2, b[j].lo)) break ; + for (; j < bn ; j++) if (b[j].lo && !strcmp(argv[i] + 2, b[j].lo)) break ; if (j >= bn) return (*problem = -1, -1-i) ; *br &= ~b[j].clear ; *br |= b[j].set ; |
