Index: funcs/func_enum.c =================================================================== --- funcs/func_enum.c (revision 13704) +++ funcs/func_enum.c (working copy) @@ -64,7 +64,7 @@ ); int res = 0; char tech[80]; - char dest[256] = ""; + char dest[256] = "", tmp[2] = "", num[AST_MAX_EXTENSION] = ""; struct localuser *u; char *s, *p; @@ -92,14 +92,18 @@ /* strip any '-' signs from number */ for (s = p = args.number; *s; s++) { - if (*s != '-') - *p++ = *s; + if (*s != '-') { + snprintf(tmp, sizeof(tmp), "%c", *s); + strncat(num, tmp, sizeof(num)); + } + } - *p = '\0'; + ast_log(LOG_NOTICE, "Num=%s\n", num); + LOCAL_USER_ADD(u); - res = ast_get_enum(chan, p, dest, sizeof(dest), tech, sizeof(tech), args.zone, + res = ast_get_enum(chan, num, dest, sizeof(dest), tech, sizeof(tech), args.zone, args.options); LOCAL_USER_REMOVE(u);