** This code is Copyright (c) 2002, by the authors of nmh. See the
** COPYRIGHT file in the root directory of the nmh distribution for
** complete copyright information.
+**
+** This is the engine that processes the format instructions created by
+** fmt_compile (found in fmt_compile.c).
*/
#include <h/mh.h>
ljust++;
}
- if (!ljust && i > 0 && strlen(str) > i)
+ if (!ljust && i > 0 && (int)strlen(str) > i)
str[i] = '\0';
xp = str;
xp += strlen(str) - 1;
while (xp > str && isspace(*xp))
*xp-- = '\0';
- if (ljust && i > 0 && strlen(str) > i)
+ if (ljust && i > 0 && (int)strlen(str) > i)
str += strlen(str) - i;
}
break;
value = fmt->f_comp->c_tws->tw_flags & TW_DST;
break;
case FT_LS_822DATE:
- str = dasctime(fmt->f_comp->c_tws , TW_ZONE);
- break;
case FT_LS_PRETTY:
- str = dasctime(fmt->f_comp->c_tws, TW_NULL);
+ str = dasctime(fmt->f_comp->c_tws);
break;
case FT_LS_PERS:
sp = fmt->f_text;
indent = strlen(sp);
wid -= indent;
+ if (wid <= 0) {
+ adios(NULL, "putaddr -- num register (%d) "
+ "must be greater than label "
+ "width (%d)", value, indent);
+ }
while( (c = *sp++) && cp < ep)
*cp++ = c;
while (len > wid) {