Changeset 148 for sbliveos2/trunk/drv16


Ignore:
Timestamp:
Apr 26, 2000, 8:01:02 PM (25 years ago)
Author:
sandervl
Message:

beta 0.25 update

Location:
sbliveos2/trunk/drv16
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • sbliveos2/trunk/drv16/ioctl.cpp

    r147 r148  
    202202   PSTREAM             pStream;
    203203   ULONG               volume;
     204   ULONG               addr;
    204205
    205206   if (p->usIOCtlRequest != AUDIO_CHANGE) {
     
    211212
    212213   pAudChange = (LPMCI_AUDIO_CHANGE)p->pbRequestInfo;
    213    
    214    if(DevHelp_VerifyAccess(SELECTOROF(pAudChange), sizeof(MCI_AUDIO_CHANGE), OFFSETOF(pAudChange), VERIFY_READONLY))
    215    {
     214
     215   //Test for MMPM/2 bug (structure crosses selector boundary)
     216   addr  = OFFSETOF(pAudChange);
     217   addr += sizeof(MCI_AUDIO_CHANGE);
     218   if(addr >= 0x10000UL) {
    216219        dprintf(("Invalid MCI_AUDIO_CHANGE pointer %lx!!", (ULONG)pAudChange));
    217220        p->sReturnCode = INVALID_REQUEST;
     
    220223   }
    221224   pMasterVol = (LPMCI_TRACK_INFO)pAudChange->pvDevInfo;
    222    if(DevHelp_VerifyAccess(SELECTOROF(pMasterVol), sizeof(MCI_TRACK_INFO), OFFSETOF(pMasterVol), VERIFY_READONLY))
    223    {
     225
     226   //Test for MMPM/2 bug (structure crosses selector boundary)
     227   addr  = OFFSETOF(pMasterVol);
     228   addr += sizeof(MCI_TRACK_INFO);
     229   if(addr >= 0x10000UL) {
    224230        dprintf(("Invalid MCI_TRACK_INFO pointer %lx!!", (ULONG)pMasterVol));
    225231        p->sReturnCode = INVALID_REQUEST;
  • sbliveos2/trunk/drv16/makefile.os2

    r147 r148  
    142142
    143143clean:
    144      del *.obj *.err *.lnk *.sys *.sym *.lst *.map *.wmap
     144     del *.obj *.err *.lnk *.sys *.sym *.lst *.map *.wmap *.lrf
  • sbliveos2/trunk/drv16/malloc.c

    r142 r148  
    5454unsigned uMemFree;      // N bytes available for allocation.
    5555char __near
    56    acHeap[HEAP_SIZE];   // The heap.  NOTE:  This must be the last data definition in the HEAP segment,
     56   acHeap[HEAP_SIZE] = {0};   // The heap.  NOTE:  This must be the last data definition in the HEAP segment,
    5757                        // although not done currently, we are planning to size the heap down at INIT
    5858                        // time.  If this is done, any vbls in the HEAP segment that
Note: See TracChangeset for help on using the changeset viewer.