diff --git a/ChangeLog b/ChangeLog
index c1573fa04..e577e5bbc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2019-07-16 Peter Stephenson
+
+ * 44523: Test/Makefile.in: allow ZTST_handler to be something
+ other than runtests.zsh to accommodate alternative test modes.
+
2019-07-15 Peter Stephenson
* 44509: Src/params.c: Prevent crash with modified PATH / path
diff --git a/Test/Makefile.in b/Test/Makefile.in
index 083df4942..09f37bf53 100644
--- a/Test/Makefile.in
+++ b/Test/Makefile.in
@@ -40,16 +40,21 @@ INSTALL = @INSTALL@
# ========== DEPENDENCIES FOR TESTING ==========
+# If ZTST_handler is not empty, run that instead of runtests.zsh.
+# It's assumed to be found in the source directory.
check test:
if test -n "$(DLLD)"; then \
cd $(dir_top) && DESTDIR= \
$(MAKE) MODDIR=`pwd`/$(subdir)/Modules install.modules > /dev/null; \
fi
+ if test -z "$$ZTST_handler"; then \
+ ZTST_handler=runtests.zsh; \
+ fi; \
if ZTST_testlist="`for f in $(sdir)/$(TESTNUM)*.ztst; \
do echo $$f; done`" \
ZTST_srcdir="$(sdir)" \
ZTST_exe=$(dir_top)/Src/zsh@EXEEXT@ \
- $(dir_top)/Src/zsh@EXEEXT@ +Z -f $(sdir)/runtests.zsh; then \
+ $(dir_top)/Src/zsh@EXEEXT@ +Z -f $(sdir)/$$ZTST_handler; then \
stat=0; \
else \
stat=1; \