Changeset 7220 for trunk/src/kernel32/hmdisk.cpp
- Timestamp:
- Oct 26, 2001, 4:48:37 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kernel32/hmdisk.cpp
r7219 r7220 1 /* $Id: hmdisk.cpp,v 1. 19 2001-10-26 13:03:04sandervl Exp $ */1 /* $Id: hmdisk.cpp,v 1.20 2001-10-26 14:48:37 sandervl Exp $ */ 2 2 3 3 /* … … 589 589 *lpBytesReturned = 0; 590 590 591 if(nOutBufferSize < 4 || !pTOC) { 591 if(!pTOC) { 592 SetLastError(ERROR_INVALID_PARAMETER); 593 return FALSE; 594 } 595 if(nOutBufferSize < sizeof(CDROM_TOC)) { 592 596 SetLastError(ERROR_INSUFFICIENT_BUFFER); 593 597 return FALSE; … … 605 609 pTOC->LastTrack = diskinfo.ucLastTrack; 606 610 numtracks = pTOC->LastTrack - pTOC->FirstTrack + 1; 607 *(WORD *)&pTOC->Length = 4 + numtracks*sizeof(TRACK_DATA);608 611 dprintf(("first %d, last %d, num %d", pTOC->FirstTrack, pTOC->LastTrack, numtracks)); 612 613 int len = 4 + numtracks*sizeof(TRACK_DATA) - 2; //minus length itself; 614 //big endian format 615 pTOC->Length[0] = HIBYTE(len); 616 pTOC->Length[1] = LOBYTE(len); 609 617 610 618 if(nOutBufferSize < 4+numtracks*sizeof(TRACK_DATA)) { … … 633 641 pTOC->TrackData[i].Adr = trackinfo.ucTrackControl & 0xF; 634 642 pTOC->TrackData[i].Reserved1 = 0; 635 *(DWORD *)&pTOC->TrackData[i].Address = trackinfo.ulTrackAddr; 643 //big endian format 644 pTOC->TrackData[i].Address[0] = HIWORD(HIBYTE(trackinfo.ulTrackAddr)); 645 pTOC->TrackData[i].Address[1] = HIWORD(LOBYTE(trackinfo.ulTrackAddr)); 646 pTOC->TrackData[i].Address[2] = LOWORD(HIBYTE(trackinfo.ulTrackAddr)); 647 pTOC->TrackData[i].Address[3] = LOWORD(LOBYTE(trackinfo.ulTrackAddr)); 636 648 } 637 649 if(lpBytesReturned)
Note:
See TracChangeset
for help on using the changeset viewer.