Changeset 8857 for trunk/src


Ignore:
Timestamp:
Jul 12, 2002, 10:59:24 AM (23 years ago)
Author:
sandervl
Message:

Changed init order; do not check for MMPM2 presence if wave audio was already disabled

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/winmm/initwinmm.cpp

    r8568 r8857  
    1 /* $Id: initwinmm.cpp,v 1.9 2002-06-04 17:36:55 sandervl Exp $
     1/* $Id: initwinmm.cpp,v 1.10 2002-07-12 08:59:24 sandervl Exp $
    22 *
    33 * WINMM DLL entry point
     
    6767static HMODULE MMPMLibraryHandle = 0;
    6868
    69 BOOL fMMPMAvailable = FALSE;
     69BOOL fMMPMAvailable = TRUE;
    7070
    7171DWORD (APIENTRY *pfnmciSendCommand)(WORD   wDeviceID,
     
    8282void WIN32API DisableWaveAudio()
    8383{
    84     fMMPMAvailable = FALSE;
     84    fMMPMAvailable       = FALSE;
    8585    pfnmciGetErrorString = NULL;
    86     pfnmciSendCommand = NULL;
     86    pfnmciSendCommand    = NULL;
    8787}
    8888//******************************************************************************
     
    115115        WaveOut::setDefaultVolume(dwVolume);
    116116
    117         // try to load the MDM library, not MMPM directly!!!
    118         if (DosLoadModule(szError, sizeof(szError),
    119                           "MDM.DLL", &MMPMLibraryHandle) != NO_ERROR)
    120         {
    121             // this system has no MMPM :-(
    122             fMMPMAvailable = FALSE;
    123         }
    124         else
    125         {
    126             /* detect if MMPM is available */
    127             if (DosQueryProcAddr(MMPMLibraryHandle,
    128                                  1, /* ORD_MCISENDCOMMAND */
    129                                  NULL,
    130                                 (PFN*)&pfnmciSendCommand) != NO_ERROR)
     117        if(fMMPMAvailable == TRUE)
     118        {//if audio access wasn't disabled already, check if mmpm2 is installed
     119            // try to load the MDM library, not MMPM directly!!!
     120            if (DosLoadModule(szError, sizeof(szError),
     121                              "MDM.DLL", &MMPMLibraryHandle) != NO_ERROR)
    131122            {
     123                // this system has no MMPM :-(
    132124                fMMPMAvailable = FALSE;
    133125            }
    134126            else
    135127            {
    136                 fMMPMAvailable = TRUE;
     128                /* detect if MMPM is available */
     129                if (DosQueryProcAddr(MMPMLibraryHandle,
     130                                     1, /* ORD_MCISENDCOMMAND */
     131                                     NULL,
     132                                    (PFN*)&pfnmciSendCommand) != NO_ERROR)
     133                {
     134                    fMMPMAvailable = FALSE;
     135                }
     136                else
     137                {
     138                    fMMPMAvailable = TRUE;
     139                }
     140
     141                /* see if we can get the address for the mciGetErrorString function */
     142                if (fMMPMAvailable == TRUE)
     143                {
     144                    if (DosQueryProcAddr(MMPMLibraryHandle,
     145                                         3, /* ORD_MCIGETERRORSTRING */
     146                                         NULL,
     147                                         (PFN*)&pfnmciGetErrorString) != NO_ERROR)
     148                        pfnmciGetErrorString = NULL;
     149                }
     150                dprintf(("MMPM/2 is available; hmod %x", MMPMLibraryHandle));
     151                dprintf(("mciSendCommand    %x", pfnmciSendCommand));
     152                dprintf(("mciGetErrorString %x", pfnmciGetErrorString));
    137153            }
    138 
    139             /* see if we can get the address for the mciGetErrorString function */
    140             if (fMMPMAvailable == TRUE)
    141             {
    142                 if (DosQueryProcAddr(MMPMLibraryHandle,
    143                                      3, /* ORD_MCIGETERRORSTRING */
    144                                      NULL,
    145                                      (PFN*)&pfnmciGetErrorString) != NO_ERROR)
    146                     pfnmciGetErrorString = NULL;
    147             }
    148             dprintf(("MMPM/2 is available; hmod %x", MMPMLibraryHandle));
    149             dprintf(("mciSendCommand    %x", pfnmciSendCommand));
    150             dprintf(("mciGetErrorString %x", pfnmciGetErrorString));
    151         }
     154        }
     155
    152156        if(fMMPMAvailable && RegOpenKeyA(HKEY_LOCAL_MACHINE, CUSTOM_BUILD_OPTIONS_KEY, &hKey) == 0)
    153157        {
Note: See TracChangeset for help on using the changeset viewer.