diff -r asterisk-1.6.0.5-orig/main/manager.c asterisk-1.6.0.5/main/manager.c 1897a1898 > " ExtraExten: Extension to transfer extrachannel to (optional)\n" 1898a1900 > " ExtraContext: Context to transfer extrachannel to (optional)\n" 1899a1902 > " Priority: Priority to transfer extrachannel to (optional)\n" 1909a1913,1915 > const char *exten2 = astman_get_header(m, "ExtraExten"); > const char *context2 = astman_get_header(m, "ExtraContext"); > const char *priority2 = astman_get_header(m, "ExtraPriority"); 1911a1918 > int pi2 = 0; 1923a1931,1936 > if (!ast_strlen_zero(priority2) && (sscanf(priority2, "%d", &pi2) != 1)) { > if ((pi2 = ast_findlabel_extension(NULL, context2, exten2, priority2, NULL)) < 1) { > astman_send_error(s, m, "Invalid ExtraPriority"); > return 0; > } > } 1948,1950c1961,1966 < if (chan2) < res = ast_async_goto(chan2, context, exten, pi); < else --- > if (chan2) { > if (context2) > res = ast_async_goto(chan2, context2, exten2, pi2); > else > res = ast_async_goto(chan2, context, exten, pi); > } else 2166c2182 < if (!ast_strlen_zero(name)) { --- > if (ast_strlen_zero(name)) {