winemp3: Fix incorrect stream handling.
diff --git a/dlls/winemp3.acm/mpegl3.c b/dlls/winemp3.acm/mpegl3.c
index fd06c0d..01697a7 100644
--- a/dlls/winemp3.acm/mpegl3.c
+++ b/dlls/winemp3.acm/mpegl3.c
@@ -180,7 +180,8 @@
             TRACE("New format: %li Hz, %i channels, encoding value %i\n", rate, channels, enc);
         }
         dpos += size;
-    } while (ret == MPG123_OK);
+        if (dpos > *ndst) break;
+    } while (ret != MPG123_ERR && ret != MPG123_NEED_MORE);
     *ndst = dpos;
 }