changeset 11892:00033e2470ec

doveadm: Moved print formatters list to doveadm.c
author Timo Sirainen <tss@iki.fi>
date Fri, 23 Jul 2010 15:58:14 +0100
parents 19574f77a021
children 839469d13df3
files src/doveadm/doveadm-print.c src/doveadm/doveadm-print.h src/doveadm/doveadm.c
diffstat 3 files changed, 11 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/src/doveadm/doveadm-print.c	Fri Jul 23 15:55:27 2010 +0100
+++ b/src/doveadm/doveadm-print.c	Fri Jul 23 15:58:14 2010 +0100
@@ -21,12 +21,6 @@
 };
 
 static struct doveadm_print_context *ctx;
-static const struct doveadm_print_vfuncs *doveadm_print_vfuncs_all[] = {
-	&doveadm_print_flow_vfuncs,
-	&doveadm_print_tab_vfuncs,
-	&doveadm_print_table_vfuncs,
-	&doveadm_print_pager_vfuncs
-};
 
 bool doveadm_print_is_initialized(void)
 {
@@ -132,7 +126,7 @@
 	ctx->pool = pool;
 	p_array_init(&ctx->headers, pool, 16);
 
-	for (i = 0; i < N_ELEMENTS(doveadm_print_vfuncs_all); i++) {
+	for (i = 0; doveadm_print_vfuncs_all[i] != NULL; i++) {
 		if (strcmp(doveadm_print_vfuncs_all[i]->name, name) == 0) {
 			ctx->v = doveadm_print_vfuncs_all[i];
 			break;
--- a/src/doveadm/doveadm-print.h	Fri Jul 23 15:55:27 2010 +0100
+++ b/src/doveadm/doveadm-print.h	Fri Jul 23 15:58:14 2010 +0100
@@ -10,6 +10,8 @@
 	DOVEADM_PRINT_HEADER_FLAG_HIDE_TITLE	 	= 0x04
 };
 
+extern const struct doveadm_print_vfuncs *doveadm_print_vfuncs_all[];
+
 bool doveadm_print_is_initialized(void);
 
 void doveadm_print_header(const char *key, const char *title,
--- a/src/doveadm/doveadm.c	Fri Jul 23 15:55:27 2010 +0100
+++ b/src/doveadm/doveadm.c	Fri Jul 23 15:58:14 2010 +0100
@@ -15,6 +15,14 @@
 #include <stdlib.h>
 #include <unistd.h>
 
+const struct doveadm_print_vfuncs *doveadm_print_vfuncs_all[] = {
+	&doveadm_print_flow_vfuncs,
+	&doveadm_print_tab_vfuncs,
+	&doveadm_print_table_vfuncs,
+	&doveadm_print_pager_vfuncs,
+	NULL
+};
+
 static ARRAY_DEFINE(doveadm_cmds, struct doveadm_cmd);
 
 void doveadm_register_cmd(const struct doveadm_cmd *cmd)