]> git.saurik.com Git - wxWidgets.git/blobdiff - contrib/src/mmedia/sndwin.cpp
test for wxLog interaction with wxYield better
[wxWidgets.git] / contrib / src / mmedia / sndwin.cpp
index c2776d9438ecc32da60502496d7cf4cef55c02e7..538f7e1813f6ab28eb2f09aad9e7f0971f929bb5 100644 (file)
 #ifndef WX_PRECOMP
     #include "wx/defs.h"
     #include "wx/app.h"
-    #include "wx/module.h"
-    #include "wx/msw/private.h"
     #include "wx/string.h"
 #endif
 
+#include "wx/module.h"
+#include "wx/msw/private.h"
+
 // -------------------------------------------------------------------------
 // MMedia headers
 // -------------------------------------------------------------------------
@@ -97,8 +98,11 @@ wxSoundStreamWin::wxSoundStreamWin()
 
   m_waiting_for = FALSE;
 
-  if (!OpenDevice(wxSOUND_OUTPUT))
-    return;
+  if (!OpenDevice(wxSOUND_OUTPUT)) {
+    m_snderror = wxSOUND_NOERROR; //next call to OpenDevice won't do this
+    if (!OpenDevice(wxSOUND_INPUT))
+      return;
+  }
 
   CloseDevice();
 }
@@ -117,7 +121,13 @@ wxSoundStreamWin::~wxSoundStreamWin()
 // -----------------------------------------------------------------------
 // _wxSoundHandlerWndProc: Window callback to handle buffer completion
 // -----------------------------------------------------------------------
-LRESULT APIENTRY _EXPORT _wxSoundHandlerWndProc(HWND hWnd, UINT message,
+/*
+LRESULT APIENTRY _EXPORT
+*/
+
+LRESULT WXDLLEXPORT APIENTRY _EXPORT 
+
+ _wxSoundHandlerWndProc(HWND hWnd, UINT message,
                  WPARAM wParam, LPARAM lParam)
 {
   wxSoundStreamWin *sndwin;
@@ -307,7 +317,7 @@ wxSoundInfoHeader *wxSoundStreamWin::AllocHeader(int mode)
   info->m_h_header = GlobalAlloc(GMEM_MOVEABLE | GMEM_SHARE, sizeof(WAVEHDR));
   if (!info->m_h_data || !info->m_h_header) {
     delete info;
-    m_snderror = wxSOUND_MEMERR;
+    m_snderror = wxSOUND_MEMERROR;
     return NULL;
   }