From: Dominique Pelle Date: Mon, 7 Jun 2021 18:28:45 +0000 (+0200) Subject: patch 8.2.2959: sound_playfile() is not tested on MS-Windows X-Git-Tag: v8.2.2959 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2f9c209ba089d81fd727122bbe0ae1da00585d80;p=vim patch 8.2.2959: sound_playfile() is not tested on MS-Windows Problem: sound_playfile() is not tested on MS-Windows. Solution: Make it work and enable the test. (Dominique Pellé, closes #8338) --- diff --git a/src/sound.c b/src/sound.c index 9d91f6c08..702fd257a 100644 --- a/src/sound.c +++ b/src/sound.c @@ -355,10 +355,9 @@ f_sound_playevent(typval_T *argvars, typval_T *rettv) if (wp == NULL) return; - PlaySoundW(wp, NULL, SND_ASYNC | SND_ALIAS); + if (PlaySoundW(wp, NULL, SND_ASYNC | SND_ALIAS)) + rettv->vval.v_number = ++sound_id; free(wp); - - rettv->vval.v_number = ++sound_id; } void diff --git a/src/testdir/test_sound.vim b/src/testdir/test_sound.vim index cc01bf6a7..ff58262bf 100644 --- a/src/testdir/test_sound.vim +++ b/src/testdir/test_sound.vim @@ -75,17 +75,15 @@ func Test_play_silent() endfunc func Test_play_event_error() - " Do not run test on Windows as: - " - playing event with callback is not supported on Windows. - " - FIXME: even without callback, sound_playevent('') does not return 0 on Windows. Bug? - CheckNotMSWindows - - call assert_equal(0, sound_playevent('')) - call assert_equal(0, sound_playevent(test_null_string())) - call assert_equal(0, sound_playevent('doesnotexist')) - call assert_equal(0, sound_playevent('doesnotexist', 'doesnotexist')) - call assert_equal(0, sound_playevent(test_null_string(), test_null_string())) - call assert_equal(0, sound_playevent(test_null_string(), test_null_function())) + " FIXME: sound_playevent() doesn't return 0 in case of error on Windows. + if !has('win32') + call assert_equal(0, sound_playevent('')) + call assert_equal(0, sound_playevent(test_null_string())) + call assert_equal(0, sound_playevent('doesnotexist')) + call assert_equal(0, sound_playevent('doesnotexist', 'doesnotexist')) + call assert_equal(0, sound_playevent(test_null_string(), test_null_string())) + call assert_equal(0, sound_playevent(test_null_string(), test_null_function())) + endif call assert_equal(0, sound_playfile('')) call assert_equal(0, sound_playfile(test_null_string())) diff --git a/src/version.c b/src/version.c index e39ee98fc..13a520047 100644 --- a/src/version.c +++ b/src/version.c @@ -750,6 +750,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 2959, /**/ 2958, /**/