From c1220dd27ee62481f9f49f2d83ab06e322b894ae Mon Sep 17 00:00:00 2001 From: Luigi Rizzo Date: Sat, 16 Dec 2006 09:46:20 +0000 Subject: convert ast_build_str to ast_str_* git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@48516 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- main/translate.c | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) (limited to 'main/translate.c') diff --git a/main/translate.c b/main/translate.c index 5fc5101b4..c7387a713 100644 --- a/main/translate.c +++ b/main/translate.c @@ -525,12 +525,9 @@ static int show_translation(int fd, int argc, char *argv[]) longest = curlen; } for (x = -1; x < SHOW_TRANS; x++) { - char line[120]; - char *buf = line; - size_t left = sizeof(line) - 1; /* one initial space */ - /* next 2 lines run faster than using ast_build_string() */ - *buf++ = ' '; - *buf = '\0'; + struct ast_str *out = ast_str_alloca(120); + + ast_str_set(&out, -1, " "); for (y = -1; y < SHOW_TRANS; y++) { curlen = strlen(ast_getformatname(1 << (y))); @@ -538,21 +535,21 @@ static int show_translation(int fd, int argc, char *argv[]) /* XXX 999 is a little hackish We don't want this number being larger than the shortest (or current) codec For now, that is "gsm" */ - ast_build_string(&buf, &left, "%*d", curlen + 1, tr_matrix[x][y].cost > 999 ? 0 : tr_matrix[x][y].cost); + ast_str_append(&out, -1, "%*d", curlen + 1, tr_matrix[x][y].cost > 999 ? 0 : tr_matrix[x][y].cost); } else if (x == -1 && y >= 0) { /* Top row - use a dynamic size */ - ast_build_string(&buf, &left, "%*s", curlen + 1, ast_getformatname(1 << (x + y + 1)) ); + ast_str_append(&out, -1, "%*s", curlen + 1, ast_getformatname(1 << (x + y + 1)) ); } else if (y == -1 && x >= 0) { /* Left column - use a static size. */ - ast_build_string(&buf, &left, "%*s", longest, ast_getformatname(1 << (x + y + 1)) ); + ast_str_append(&out, -1, "%*s", longest, ast_getformatname(1 << (x + y + 1)) ); } else if (x >= 0 && y >= 0) { - ast_build_string(&buf, &left, "%*s", curlen + 1, "-"); + ast_str_append(&out, -1, "%*s", curlen + 1, "-"); } else { - ast_build_string(&buf, &left, "%*s", longest, ""); + ast_str_append(&out, -1, "%*s", longest, ""); } } - ast_build_string(&buf, &left, "\n"); - ast_cli(fd, line); + ast_str_append(&out, -1, "\n"); + ast_cli(fd, out->str); } AST_RWLIST_UNLOCK(&translators); return RESULT_SUCCESS; -- cgit v1.2.3