Mercurial > vim
view src/proto/channel.pro @ 33710:385aaea67d33 v9.0.2089
patch 9.0.2089: sound_playfile() fails when using powershell
Commit: https://github.com/vim/vim/commit/15d270019e88a8ba67618adf5efe1aaa81ce354b
Author: GuyBrush <miguel.barro@live.com>
Date: Sat Nov 4 09:48:53 2023 +0100
patch 9.0.2089: sound_playfile() fails when using powershell
Problem: sound_playfile() fails when using powershell
Solution: quote filename using doublequotes, don't escape filename,
because it doesn't use the shell
Avoiding powershell escaping because mci open command doesn't support
single quoted filenames: open 'C:\whatever\sound.wav' is not valid.
closes: #13471
Signed-off-by: GuyBrush <miguel.barro@live.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 04 Nov 2023 10:00:05 +0100 |
parents | fa309d9af73c |
children |
line wrap: on
line source
/* channel.c */ channel_T *add_channel(void); int has_any_channel(void); int channel_still_useful(channel_T *channel); int channel_can_close(channel_T *channel); int channel_unref(channel_T *channel); int free_unused_channels_contents(int copyID, int mask); void free_unused_channels(int copyID, int mask); void channel_gui_register_all(void); channel_T *channel_open(const char *hostname, int port, int waittime, void (*nb_close_cb)(void)); void ch_close_part(channel_T *channel, ch_part_T part); void channel_set_pipes(channel_T *channel, sock_T in, sock_T out, sock_T err); void channel_set_job(channel_T *channel, job_T *job, jobopt_T *options); void channel_write_in(channel_T *channel); void channel_buffer_free(buf_T *buf); void channel_write_any_lines(void); void channel_write_new_lines(buf_T *buf); readq_T *channel_peek(channel_T *channel, ch_part_T part); char_u *channel_first_nl(readq_T *node); char_u *channel_get(channel_T *channel, ch_part_T part, int *outlen); void channel_consume(channel_T *channel, ch_part_T part, int len); int channel_collapse(channel_T *channel, ch_part_T part, int want_nl); int channel_can_write_to(channel_T *channel); int channel_is_open(channel_T *channel); void channel_close(channel_T *channel, int invoke_close_cb); void channel_clear(channel_T *channel); void channel_free_all(void); int channel_in_blocking_wait(void); channel_T *get_channel_arg(typval_T *tv, int check_open, int reading, ch_part_T part); void channel_handle_events(int only_keep_open); int channel_any_keep_open(void); void channel_set_nonblock(channel_T *channel, ch_part_T part); int channel_send(channel_T *channel, ch_part_T part, char_u *buf_arg, int len_arg, char *fun); int channel_poll_setup(int nfd_in, void *fds_in, int *towait); int channel_poll_check(int ret_in, void *fds_in); int channel_select_setup(int maxfd_in, void *rfds_in, void *wfds_in, struct timeval *tv, struct timeval **tvp); int channel_select_check(int ret_in, void *rfds_in, void *wfds_in); int channel_parse_messages(void); int channel_any_readahead(void); int set_ref_in_channel(int copyID); void f_ch_canread(typval_T *argvars, typval_T *rettv); void f_ch_close(typval_T *argvars, typval_T *rettv); void f_ch_close_in(typval_T *argvars, typval_T *rettv); void f_ch_getbufnr(typval_T *argvars, typval_T *rettv); void f_ch_getjob(typval_T *argvars, typval_T *rettv); void f_ch_info(typval_T *argvars, typval_T *rettv); void f_ch_open(typval_T *argvars, typval_T *rettv); void f_ch_read(typval_T *argvars, typval_T *rettv); void f_ch_readblob(typval_T *argvars, typval_T *rettv); void f_ch_readraw(typval_T *argvars, typval_T *rettv); void f_ch_evalexpr(typval_T *argvars, typval_T *rettv); void f_ch_sendexpr(typval_T *argvars, typval_T *rettv); void f_ch_evalraw(typval_T *argvars, typval_T *rettv); void f_ch_sendraw(typval_T *argvars, typval_T *rettv); void f_ch_setoptions(typval_T *argvars, typval_T *rettv); void f_ch_status(typval_T *argvars, typval_T *rettv); char_u *channel_to_string_buf(typval_T *varp, char_u *buf); /* vim: set ft=c : */