Index: /trunk/src/VBox/Devices/Audio/dsoundaudio.c
===================================================================
--- /trunk/src/VBox/Devices/Audio/dsoundaudio.c	(revision 35572)
+++ /trunk/src/VBox/Devices/Audio/dsoundaudio.c	(revision 35573)
@@ -235,7 +235,4 @@
 
     AUD_log (AUDIO_CAP, "Reason: %s\n", str);
-#ifdef VBOX
-    LogRel(("DSound: Reason: %s\n", str));
-#endif
 }
 
@@ -718,4 +715,9 @@
         ds->first_time ? &wpos : NULL
         );
+    if (hr == DSERR_BUFFERLOST) {
+        if (dsound_restore_out(dsb))
+            return 0;
+        hr = IDirectSoundBuffer_GetCurrentPosition(dsb, &ppos, ds->first_time ? &wpos : NULL);
+    }
     if (FAILED (hr)) {
         dsound_logerr (hr, "Could not get playback buffer position\n");
