Merged revisions 61072 via svnmerge from
[asterisk/asterisk.git] / channels / chan_sip.c
index c5e5022..5c3cac5 100644 (file)
@@ -10604,7 +10604,6 @@ static char mandescr_show_peer[] =
 /*! \brief Show SIP peers in the manager API  */
 static int manager_sip_show_peer(struct mansession *s, const struct message *m)
 {
-       const char *id = astman_get_header(m,"ActionID");
        const char *a[4];
        const char *peer;
        int ret;
@@ -10619,8 +10618,6 @@ static int manager_sip_show_peer(struct mansession *s, const struct message *m)
        a[2] = "peer";
        a[3] = peer;
 
-       if (!ast_strlen_zero(id))
-               astman_append(s, "ActionID: %s\r\n",id);
        ret = _sip_show_peer(1, -1, s, m, 4, a);
        astman_append(s, "\r\n\r\n" );
        return ret;
@@ -10655,9 +10652,13 @@ static int _sip_show_peer(int type, int fd, struct mansession *s, const struct m
        load_realtime = (argc == 5 && !strcmp(argv[4], "load")) ? TRUE : FALSE;
        peer = find_peer(argv[3], NULL, load_realtime);
        if (s) {        /* Manager */
-               if (peer)
+               if (peer) {
+                       const char *id = astman_get_header(m,"ActionID");
+
                        astman_append(s, "Response: Success\r\n");
-               else {
+                       if (!ast_strlen_zero(id))
+                               astman_append(s, "ActionID: %s\r\n",id);
+               } else {
                        snprintf (cbuf, sizeof(cbuf), "Peer %s not found.\n", argv[3]);
                        astman_send_error(s, m, cbuf);
                        return 0;