Mercurial > vim
comparison src/os_win32.c @ 8049:15253130abd8 v7.4.1319
commit https://github.com/vim/vim/commit/16eb4f88000cfdba68df6c421fe44e7e029ba53e
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Feb 14 23:02:34 2016 +0100
patch 7.4.1319
Problem: Tests fail on MS-Windows and on Unix with GUI.
Solution: Fix unregistering.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 14 Feb 2016 23:15:04 +0100 |
parents | 7c74cafac0a1 |
children | 774d53057a23 |
comparison
equal
deleted
inserted
replaced
8048:e50896a2b629 | 8049:15253130abd8 |
---|---|
5037 mch_start_job(char *cmd, job_T *job) | 5037 mch_start_job(char *cmd, job_T *job) |
5038 { | 5038 { |
5039 STARTUPINFO si; | 5039 STARTUPINFO si; |
5040 PROCESS_INFORMATION pi; | 5040 PROCESS_INFORMATION pi; |
5041 HANDLE jo; | 5041 HANDLE jo; |
5042 #ifdef FEAT_CHANNEL | 5042 # ifdef FEAT_CHANNEL |
5043 channel_T *channel; | 5043 channel_T *channel; |
5044 | 5044 |
5045 channel = add_channel(); | 5045 channel = add_channel(); |
5046 if (channel == NULL) | 5046 if (channel == NULL) |
5047 return; | 5047 return; |
5048 #endif | 5048 # endif |
5049 | 5049 |
5050 jo = CreateJobObject(NULL, NULL); | 5050 jo = CreateJobObject(NULL, NULL); |
5051 if (jo == NULL) | 5051 if (jo == NULL) |
5052 { | 5052 { |
5053 job->jv_status = JOB_FAILED; | 5053 job->jv_status = JOB_FAILED; |
5083 CloseHandle(job->jv_proc_info.hThread); | 5083 CloseHandle(job->jv_proc_info.hThread); |
5084 job->jv_proc_info = pi; | 5084 job->jv_proc_info = pi; |
5085 job->jv_job_object = jo; | 5085 job->jv_job_object = jo; |
5086 job->jv_status = JOB_STARTED; | 5086 job->jv_status = JOB_STARTED; |
5087 | 5087 |
5088 #ifdef FEAT_CHANNEL | 5088 # ifdef FEAT_CHANNEL |
5089 # if 0 | 5089 # if 0 |
5090 /* TODO: connect stdin/stdout/stderr */ | 5090 /* TODO: connect stdin/stdout/stderr */ |
5091 job->jv_channel = channel; | 5091 job->jv_channel = channel; |
5092 channel_set_pipes(channel, fd_in[1], fd_out[0], fd_err[0]); | 5092 channel_set_pipes(channel, fd_in[1], fd_out[0], fd_err[0]); |
5093 channel_set_job(channel, job); | 5093 channel_set_job(channel, job); |
5094 | 5094 |
5095 # ifdef FEAT_GUI | 5095 # ifdef FEAT_GUI |
5096 channel_gui_register(channel); | 5096 channel_gui_register(channel); |
5097 # endif | |
5097 # endif | 5098 # endif |
5098 # endif | 5099 # endif |
5099 #endif | |
5100 return; | 5100 return; |
5101 | 5101 |
5102 failed: | 5102 failed: |
5103 #ifdef FEAT_CHANNEL | 5103 # ifdef FEAT_CHANNEL |
5104 channel_free(channel); | 5104 channel_free(channel); |
5105 #endif | 5105 # endif |
5106 } | 5106 } |
5107 | 5107 |
5108 char * | 5108 char * |
5109 mch_job_status(job_T *job) | 5109 mch_job_status(job_T *job) |
5110 { | 5110 { |