To: vim_dev@googlegroups.com Subject: Patch 7.4.1395 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 7.4.1395 Problem: Using DETACH in quotes is not compatible with the Netbeans interface. (Xavier de Gaye) Solution: Remove the quotes, only use them for JSON and JS mode. Files: src/netbeans.c, src/channel.c *** ../vim-7.4.1394/src/netbeans.c 2016-02-20 18:18:51.761033118 +0100 --- src/netbeans.c 2016-02-22 23:03:12.962276461 +0100 *************** *** 461,467 **** /* NOTREACHED */ } ! if (STRCMP(cmd, "\"DETACH\"") == 0) { buf_T *buf; --- 461,467 ---- /* NOTREACHED */ } ! if (STRCMP(cmd, "DETACH") == 0) { buf_T *buf; *** ../vim-7.4.1394/src/channel.c 2016-02-22 22:19:18.838058941 +0100 --- src/channel.c 2016-02-22 23:10:48.717480745 +0100 *************** *** 1554,1560 **** /* Sent when the channel is found closed when reading. */ ! #define DETACH_MSG "\"DETACH\"\n" /* Buffer size for reading incoming messages. */ #define MAXMSGSIZE 4096 --- 1554,1561 ---- /* Sent when the channel is found closed when reading. */ ! #define DETACH_MSG_RAW "DETACH\n" ! #define DETACH_MSG_JSON "\"DETACH\"\n" /* Buffer size for reading incoming messages. */ #define MAXMSGSIZE 4096 *************** *** 1658,1663 **** --- 1659,1665 ---- int readlen = 0; sock_T fd; int use_socket = FALSE; + char *msg; fd = channel->ch_part[part].ch_fd; if (fd == INVALID_FD) *************** *** 1721,1728 **** * -> channel_read() */ ch_errors(channel, "%s(): Cannot read", func); ! channel_save(channel, part, ! (char_u *)DETACH_MSG, (int)STRLEN(DETACH_MSG)); /* TODO: When reading from stdout is not possible, should we try to * keep stdin and stderr open? Probably not, assume the other side --- 1723,1732 ---- * -> channel_read() */ ch_errors(channel, "%s(): Cannot read", func); ! msg = channel->ch_part[part].ch_mode == MODE_RAW ! || channel->ch_part[part].ch_mode == MODE_NL ! ? DETACH_MSG_RAW : DETACH_MSG_JSON; ! channel_save(channel, part, (char_u *)msg, (int)STRLEN(msg)); /* TODO: When reading from stdout is not possible, should we try to * keep stdin and stderr open? Probably not, assume the other side *** ../vim-7.4.1394/src/version.c 2016-02-22 22:51:27.521723233 +0100 --- src/version.c 2016-02-22 23:10:59.845363671 +0100 *************** *** 750,751 **** --- 750,753 ---- { /* Add new patch number below this line */ + /**/ + 1395, /**/ -- The early bird gets the worm. The second mouse gets the cheese. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///