#if HAVE_READLINE_READLINE_H
# include <readline/readline.h>
#endif
+#if HAVE_RL_ADD_HISTORY && HAVE_READLINE_HISTORY_H
+# include <readline/history.h>
+
+/* call add_history only if the line is non-blank */
+static void do_add_history(const char *line)
+{
+ if (line[strspn(line, " \t")])
+ add_history(line);
+}
+#else
+static void do_add_history(const char *line)
+{
+}
+#endif
static const char *progname = "cdecl99";
static bool interactive = true;
printf(_("Report bugs to <%s>.\n"), PACKAGE_BUGREPORT);
}
-static int is_blank_line(const char *line)
-{
- return !line[strspn(line, " \t")];
-}
-
static int repl_cmdline(unsigned count, char **commands)
{
int ret = 0;
if (!(*linebuf = readline("> ")))
return 0;
- if (!is_blank_line(*linebuf))
- add_history(*linebuf);
+ do_add_history(*linebuf);
return 1;
#endif
}
void print_error(const char *fmt, ...);
-#if HAVE_RL_ADD_HISTORY && HAVE_READLINE_HISTORY_H
-# include <readline/history.h>
-#else
-static inline void add_history(const char *str)
-{
-}
-#endif
-
#endif