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 9d91f6c..702fd25 100644
--- a/src/sound.c
+++ b/src/sound.c
@@ -355,10 +355,9 @@
     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 cc01bf6..ff58262 100644
--- a/src/testdir/test_sound.vim
+++ b/src/testdir/test_sound.vim
@@ -75,17 +75,15 @@
 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 e39ee98..13a5200 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2959,
+/**/
     2958,
 /**/
     2957,