From 8f7db3942c29be12d6ee3bb2fe0e3d7dc86dc299 Mon Sep 17 00:00:00 2001 From: Tim Edwards Date: Tue, 4 Jun 2019 16:17:17 -0400 Subject: [PATCH] Fixed the "writeall force" command, which was behaving exactly the same as "writeall", meaning that "force" was not being honored and only cells that were modified were being written, in either case. --- commands/CmdTZ.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/commands/CmdTZ.c b/commands/CmdTZ.c index 36969938..ff9559d9 100644 --- a/commands/CmdTZ.c +++ b/commands/CmdTZ.c @@ -1736,17 +1736,20 @@ CmdWriteall(w, cmd) int cmdWriteallFunc(); static char *force[] = { "force", 0 }; int argc; + int flags = CDMODIFIED | CDBOXESCHANGED | CDSTAMPSCHANGED; - if ((cmd->tx_argc >= 2) && (Lookup(cmd->tx_argv[1], force) < 0)) + if (cmd->tx_argc >= 2) { - TxError("Usage: %s [force [cellname ...]]\n", cmd->tx_argv[0]); - return; + flags = 0; + if (Lookup(cmd->tx_argv[1], force) < 0) + { + TxError("Usage: %s [force [cellname ...]]\n", cmd->tx_argv[0]); + return; + } } - DBUpdateStamps(); argc = cmd->tx_argc; - (void) DBCellSrDefs(CDMODIFIED|CDBOXESCHANGED|CDSTAMPSCHANGED, - cmdWriteallFunc, (ClientData)cmd); + (void) DBCellSrDefs(flags, cmdWriteallFunc, (ClientData)cmd); cmd->tx_argc = argc; }