--- chan_mgcp.c 2010-04-06 16:52:10.000000000 -0300 +++ chan_mgcp.c 2010-04-06 17:09:32.000000000 -0300 @@ -1681,10 +1681,10 @@ } for (gwv = gwv && gwv->next ? gwv : mgcpgwconfig; gwv->next; gwv = gwv->next); if (!ast_strlen_zero(lines)) { - for (c = lines, line = tmp; *c; c++) { + for (c = lines, line = tmp;; c++) { *line = *c; - if (*c == ',') { - *(line) = 0; + if (*c == ',' || *c == '\0') { + *(line) = '\0'; mgcpepconfig = ast_load_realtime("mgcpep", "name", at, "line", tmp, NULL); gwv->next = mgcpepconfig; @@ -1707,6 +1707,9 @@ } else { line++; } + + if(*c == '\0') + break; } } for (gwv = mgcpgwconfig; gwv; gwv = gwv->next) {