summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.0590
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.0590')
-rw-r--r--data/vim/patches/8.1.0590218
1 files changed, 0 insertions, 218 deletions
diff --git a/data/vim/patches/8.1.0590 b/data/vim/patches/8.1.0590
deleted file mode 100644
index cca000d35..000000000
--- a/data/vim/patches/8.1.0590
+++ /dev/null
@@ -1,218 +0,0 @@
-To: vim_dev@googlegroups.com
-Subject: Patch 8.1.0590
-Fcc: outbox
-From: Bram Moolenaar <Bram@moolenaar.net>
-Mime-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-------------
-
-Patch 8.1.0590
-Problem: When a job ends the closed channels are not handled.
-Solution: When a job is detected to have ended, check the channels again.
- (closes #3530)
-Files: src/channel.c, src/proto/channel.pro, src/misc2.c
-
-
-*** ../vim-8.1.0589/src/channel.c 2018-10-19 17:35:58.081200733 +0200
---- src/channel.c 2018-12-14 21:27:04.570167163 +0100
-***************
-*** 5510,5533 ****
-
- /*
- * Called once in a while: check if any jobs that seem useful have ended.
- */
-! void
- job_check_ended(void)
- {
- int i;
-
- if (first_job == NULL)
-! return;
-
- for (i = 0; i < MAX_CHECK_ENDED; ++i)
- {
-! /* NOTE: mch_detect_ended_job() must only return a job of which the
-! * status was just set to JOB_ENDED. */
- job_T *job = mch_detect_ended_job(first_job);
-
- if (job == NULL)
- break;
-! job_cleanup(job); /* may free "job" */
- }
-
- if (channel_need_redraw)
---- 5510,5537 ----
-
- /*
- * Called once in a while: check if any jobs that seem useful have ended.
-+ * Returns TRUE if a job did end.
- */
-! int
- job_check_ended(void)
- {
- int i;
-+ int did_end = FALSE;
-
-+ // be quick if there are no jobs to check
- if (first_job == NULL)
-! return did_end;
-
- for (i = 0; i < MAX_CHECK_ENDED; ++i)
- {
-! // NOTE: mch_detect_ended_job() must only return a job of which the
-! // status was just set to JOB_ENDED.
- job_T *job = mch_detect_ended_job(first_job);
-
- if (job == NULL)
- break;
-! did_end = TRUE;
-! job_cleanup(job); // may free "job"
- }
-
- if (channel_need_redraw)
-***************
-*** 5535,5540 ****
---- 5539,5545 ----
- channel_need_redraw = FALSE;
- redraw_after_callback(TRUE);
- }
-+ return did_end;
- }
-
- /*
-*** ../vim-8.1.0589/src/proto/channel.pro 2018-06-17 19:36:30.215317108 +0200
---- src/proto/channel.pro 2018-12-14 21:24:32.683134493 +0100
-***************
-*** 65,71 ****
- void job_set_options(job_T *job, jobopt_T *opt);
- void job_stop_on_exit(void);
- int has_pending_job(void);
-! void job_check_ended(void);
- job_T *job_start(typval_T *argvars, char **argv_arg, jobopt_T *opt_arg, int is_terminal);
- char *job_status(job_T *job);
- void job_info(job_T *job, dict_T *dict);
---- 65,71 ----
- void job_set_options(job_T *job, jobopt_T *opt);
- void job_stop_on_exit(void);
- int has_pending_job(void);
-! int job_check_ended(void);
- job_T *job_start(typval_T *argvars, char **argv_arg, jobopt_T *opt_arg, int is_terminal);
- char *job_status(job_T *job);
- void job_info(job_T *job, dict_T *dict);
-*** ../vim-8.1.0589/src/misc2.c 2018-12-13 22:17:52.877941474 +0100
---- src/misc2.c 2018-12-14 21:27:39.313947112 +0100
-***************
-*** 6351,6356 ****
---- 6351,6358 ----
- #endif
-
- #if defined(MESSAGE_QUEUE) || defined(PROTO)
-+ # define MAX_REPEAT_PARSE 8
-+
- /*
- * Process messages that have been queued for netbeans or clientserver.
- * Also check if any jobs have ended.
-***************
-*** 6360,6396 ****
- void
- parse_queued_messages(void)
- {
-! win_T *old_curwin = curwin;
-
- // Do not handle messages while redrawing, because it may cause buffers to
- // change or be wiped while they are being redrawn.
- if (updating_screen)
- return;
-
-! // For Win32 mch_breakcheck() does not check for input, do it here.
- # if defined(WIN32) && defined(FEAT_JOB_CHANNEL)
-! channel_handle_events(FALSE);
- # endif
-
- # ifdef FEAT_NETBEANS_INTG
-! // Process the queued netbeans messages.
-! netbeans_parse_messages();
- # endif
- # ifdef FEAT_JOB_CHANNEL
-! // Write any buffer lines still to be written.
-! channel_write_any_lines();
-
-! // Process the messages queued on channels.
-! channel_parse_messages();
- # endif
- # if defined(FEAT_CLIENTSERVER) && defined(FEAT_X11)
-! // Process the queued clientserver messages.
-! server_parse_messages();
- # endif
- # ifdef FEAT_JOB_CHANNEL
-! // Check if any jobs have ended.
-! job_check_ended();
- # endif
-
- // If the current window changed we need to bail out of the waiting loop.
- // E.g. when a job exit callback closes the terminal window.
---- 6362,6406 ----
- void
- parse_queued_messages(void)
- {
-! win_T *old_curwin = curwin;
-! int i;
-
- // Do not handle messages while redrawing, because it may cause buffers to
- // change or be wiped while they are being redrawn.
- if (updating_screen)
- return;
-
-! // Loop when a job ended, but don't keep looping forever.
-! for (i = 0; i < MAX_REPEAT_PARSE; ++i)
-! {
-! // For Win32 mch_breakcheck() does not check for input, do it here.
- # if defined(WIN32) && defined(FEAT_JOB_CHANNEL)
-! channel_handle_events(FALSE);
- # endif
-
- # ifdef FEAT_NETBEANS_INTG
-! // Process the queued netbeans messages.
-! netbeans_parse_messages();
- # endif
- # ifdef FEAT_JOB_CHANNEL
-! // Write any buffer lines still to be written.
-! channel_write_any_lines();
-
-! // Process the messages queued on channels.
-! channel_parse_messages();
- # endif
- # if defined(FEAT_CLIENTSERVER) && defined(FEAT_X11)
-! // Process the queued clientserver messages.
-! server_parse_messages();
- # endif
- # ifdef FEAT_JOB_CHANNEL
-! // Check if any jobs have ended. If so, repeat the above to handle
-! // changes, e.g. stdin may have been closed.
-! if (job_check_ended())
-! continue;
- # endif
-+ break;
-+ }
-
- // If the current window changed we need to bail out of the waiting loop.
- // E.g. when a job exit callback closes the terminal window.
-*** ../vim-8.1.0589/src/version.c 2018-12-14 19:54:35.711994528 +0100
---- src/version.c 2018-12-14 21:31:00.840677937 +0100
-***************
-*** 801,802 ****
---- 801,804 ----
- { /* Add new patch number below this line */
-+ /**/
-+ 590,
- /**/
-
---
-hundred-and-one symptoms of being an internet addict:
-3. Your bookmark takes 15 minutes to scroll from top to bottom.
-
- /// 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 ///