aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2026-04-01 00:46:57 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2026-04-01 00:46:57 +0000
commit8c7ea8f92ad0a21d3a1aefb03699b99555ff1a3c (patch)
treea3d8558e978eb9e64a85ed2ea1d306598c2bea87
parentb47da70b421dee0454c91f4f63102db46262c061 (diff)
downloadskalibs-8c7ea8f92ad0a21d3a1aefb03699b99555ff1a3c.tar.gz
Support null .lo in gol
-rw-r--r--src/include/skalibs/prog.h1
-rw-r--r--src/libstddjb/gol.c4
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 ;