mirror of
https://github.com/AppleWin/AppleWin.git
synced 2024-06-18 03:29:30 +00:00
Fix static analysis issues raised in PR #517
This commit is contained in:
parent
664edf5b6f
commit
34094f7299
|
@ -1336,11 +1336,12 @@ static void DiskLoadSnapshotDriveUnit(YamlLoadHelper& yamlLoadHelper, UINT unit)
|
||||||
g_aFloppyDisk[unit].trackimagedata = yamlLoadHelper.LoadUint(SS_YAML_KEY_TRACK_IMAGE_DATA);
|
g_aFloppyDisk[unit].trackimagedata = yamlLoadHelper.LoadUint(SS_YAML_KEY_TRACK_IMAGE_DATA);
|
||||||
g_aFloppyDisk[unit].trackimagedirty = yamlLoadHelper.LoadUint(SS_YAML_KEY_TRACK_IMAGE_DIRTY);
|
g_aFloppyDisk[unit].trackimagedirty = yamlLoadHelper.LoadUint(SS_YAML_KEY_TRACK_IMAGE_DIRTY);
|
||||||
|
|
||||||
std::auto_ptr<BYTE> pTrack( new BYTE [NIBBLES_PER_TRACK] );
|
std::vector<BYTE> track;
|
||||||
memset(pTrack.get(), 0, NIBBLES_PER_TRACK);
|
track.resize(NIBBLES_PER_TRACK);
|
||||||
|
memset(&track[0], 0, track.size());
|
||||||
if (yamlLoadHelper.GetSubMap(SS_YAML_KEY_TRACK_IMAGE))
|
if (yamlLoadHelper.GetSubMap(SS_YAML_KEY_TRACK_IMAGE))
|
||||||
{
|
{
|
||||||
yamlLoadHelper.LoadMemory(pTrack.get(), NIBBLES_PER_TRACK);
|
yamlLoadHelper.LoadMemory(&track[0], NIBBLES_PER_TRACK);
|
||||||
yamlLoadHelper.PopMap();
|
yamlLoadHelper.PopMap();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1356,7 +1357,7 @@ static void DiskLoadSnapshotDriveUnit(YamlLoadHelper& yamlLoadHelper, UINT unit)
|
||||||
if (g_aFloppyDisk[unit].trackimage == NULL)
|
if (g_aFloppyDisk[unit].trackimage == NULL)
|
||||||
bImageError = true;
|
bImageError = true;
|
||||||
else
|
else
|
||||||
memcpy(g_aFloppyDisk[unit].trackimage, pTrack.get(), NIBBLES_PER_TRACK);
|
memcpy(g_aFloppyDisk[unit].trackimage, &track[0], NIBBLES_PER_TRACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bImageError)
|
if (bImageError)
|
||||||
|
|
|
@ -192,9 +192,6 @@ bool CImageBase::WriteBlock(ImageInfo* pImageInfo, const int nBlock, LPBYTE pBlo
|
||||||
// Horribly inefficient! (Unzip to a normal file if you want better performance!)
|
// Horribly inefficient! (Unzip to a normal file if you want better performance!)
|
||||||
const UINT uNewImageSize = Offset+HD_BLOCK_SIZE;
|
const UINT uNewImageSize = Offset+HD_BLOCK_SIZE;
|
||||||
BYTE* pNewImageBuffer = new BYTE [uNewImageSize];
|
BYTE* pNewImageBuffer = new BYTE [uNewImageSize];
|
||||||
_ASSERT(pNewImageBuffer);
|
|
||||||
if (!pNewImageBuffer)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
memcpy(pNewImageBuffer, pImageInfo->pImageBuffer, pImageInfo->uImageSize);
|
memcpy(pNewImageBuffer, pImageInfo->pImageBuffer, pImageInfo->uImageSize);
|
||||||
memset(&pNewImageBuffer[pImageInfo->uImageSize], 0, uNewImageSize-pImageInfo->uImageSize); // Should always be HD_BLOCK_SIZE (so this is redundant)
|
memset(&pNewImageBuffer[pImageInfo->uImageSize], 0, uNewImageSize-pImageInfo->uImageSize); // Should always be HD_BLOCK_SIZE (so this is redundant)
|
||||||
|
@ -1153,8 +1150,6 @@ ImageError_e CImageHelperBase::CheckGZipFile(LPCTSTR pszImageFilename, ImageInfo
|
||||||
|
|
||||||
const UINT MAX_UNCOMPRESSED_SIZE = GetMaxImageSize() + 1; // +1 to detect images that are too big
|
const UINT MAX_UNCOMPRESSED_SIZE = GetMaxImageSize() + 1; // +1 to detect images that are too big
|
||||||
pImageInfo->pImageBuffer = new BYTE[MAX_UNCOMPRESSED_SIZE];
|
pImageInfo->pImageBuffer = new BYTE[MAX_UNCOMPRESSED_SIZE];
|
||||||
if (!pImageInfo->pImageBuffer)
|
|
||||||
return eIMAGE_ERROR_BAD_POINTER;
|
|
||||||
|
|
||||||
int nLen = gzread(hGZFile, pImageInfo->pImageBuffer, MAX_UNCOMPRESSED_SIZE);
|
int nLen = gzread(hGZFile, pImageInfo->pImageBuffer, MAX_UNCOMPRESSED_SIZE);
|
||||||
if (nLen < 0 || nLen == MAX_UNCOMPRESSED_SIZE)
|
if (nLen < 0 || nLen == MAX_UNCOMPRESSED_SIZE)
|
||||||
|
@ -1222,8 +1217,6 @@ ImageError_e CImageHelperBase::CheckZipFile(LPCTSTR pszImageFilename, ImageInfo*
|
||||||
return eIMAGE_ERROR_BAD_SIZE;
|
return eIMAGE_ERROR_BAD_SIZE;
|
||||||
|
|
||||||
pImageInfo->pImageBuffer = new BYTE[uFileSize];
|
pImageInfo->pImageBuffer = new BYTE[uFileSize];
|
||||||
if (!pImageInfo->pImageBuffer)
|
|
||||||
return eIMAGE_ERROR_BAD_POINTER;
|
|
||||||
|
|
||||||
nRes = unzOpenCurrentFile(hZipFile);
|
nRes = unzOpenCurrentFile(hZipFile);
|
||||||
if (nRes != UNZ_OK)
|
if (nRes != UNZ_OK)
|
||||||
|
@ -1352,8 +1345,6 @@ ImageError_e CImageHelperBase::CheckNormalFile(LPCTSTR pszImageFilename, ImageIn
|
||||||
const UINT uDetectSize = GetMinDetectSize(dwSize, &bTempDetectBuffer);
|
const UINT uDetectSize = GetMinDetectSize(dwSize, &bTempDetectBuffer);
|
||||||
|
|
||||||
pImageInfo->pImageBuffer = new BYTE [dwSize];
|
pImageInfo->pImageBuffer = new BYTE [dwSize];
|
||||||
if (!pImageInfo->pImageBuffer)
|
|
||||||
return eIMAGE_ERROR_BAD_POINTER;
|
|
||||||
|
|
||||||
DWORD dwBytesRead;
|
DWORD dwBytesRead;
|
||||||
BOOL bRes = ReadFile(hFile, pImageInfo->pImageBuffer, dwSize, &dwBytesRead, NULL);
|
BOOL bRes = ReadFile(hFile, pImageInfo->pImageBuffer, dwSize, &dwBytesRead, NULL);
|
||||||
|
@ -1377,9 +1368,6 @@ ImageError_e CImageHelperBase::CheckNormalFile(LPCTSTR pszImageFilename, ImageIn
|
||||||
if (pImageType && dwSize)
|
if (pImageType && dwSize)
|
||||||
{
|
{
|
||||||
pImageInfo->pImageBuffer = new BYTE [dwSize];
|
pImageInfo->pImageBuffer = new BYTE [dwSize];
|
||||||
if (!pImageInfo->pImageBuffer)
|
|
||||||
return eIMAGE_ERROR_BAD_POINTER;
|
|
||||||
|
|
||||||
ZeroMemory(pImageInfo->pImageBuffer, dwSize);
|
ZeroMemory(pImageInfo->pImageBuffer, dwSize);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -130,7 +130,7 @@ static void InitRemainderBuffer()
|
||||||
SetClksPerSpkrSample();
|
SetClksPerSpkrSample();
|
||||||
|
|
||||||
g_nRemainderBufferSize = (UINT) g_fClksPerSpkrSample;
|
g_nRemainderBufferSize = (UINT) g_fClksPerSpkrSample;
|
||||||
if ((double)g_nRemainderBufferSize != g_fClksPerSpkrSample)
|
if ((double)g_nRemainderBufferSize < g_fClksPerSpkrSample)
|
||||||
g_nRemainderBufferSize++;
|
g_nRemainderBufferSize++;
|
||||||
|
|
||||||
g_pRemainderBuffer = new short [g_nRemainderBufferSize];
|
g_pRemainderBuffer = new short [g_nRemainderBufferSize];
|
||||||
|
@ -339,10 +339,10 @@ BYTE __stdcall SpkrToggle (WORD, WORD, BYTE, BYTE, ULONG nCyclesLeft)
|
||||||
if (g_bQuieterSpeaker)
|
if (g_bQuieterSpeaker)
|
||||||
{
|
{
|
||||||
// quieten the speaker if 8 bit DAC in use
|
// quieten the speaker if 8 bit DAC in use
|
||||||
if (g_nSpeakerData == (SPKR_DATA_INIT >> 2))
|
if (g_nSpeakerData == (SPKR_DATA_INIT/4)) // NB. Don't shift -ve number right: undefined behaviour (MSDN says: implementation-dependent)
|
||||||
g_nSpeakerData = ~g_nSpeakerData;
|
g_nSpeakerData = ~g_nSpeakerData;
|
||||||
else
|
else
|
||||||
g_nSpeakerData = SPKR_DATA_INIT>>2;
|
g_nSpeakerData = SPKR_DATA_INIT/4; // NB. Don't shift -ve number right: undefined behaviour (MSDN says: implementation-dependent)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -58,6 +58,12 @@ void uilib_get_general_window_extents(HWND hwnd, int *xsize, int *ysize)
|
||||||
strlen = SendMessage(hwnd, WM_GETTEXTLENGTH, 0, 0);
|
strlen = SendMessage(hwnd, WM_GETTEXTLENGTH, 0, 0);
|
||||||
/* RGJ added cast for AppleWin */
|
/* RGJ added cast for AppleWin */
|
||||||
buffer = (char *) malloc(strlen + 1);
|
buffer = (char *) malloc(strlen + 1);
|
||||||
|
if (buffer == NULL) // TC: add null check for AppleWin
|
||||||
|
{
|
||||||
|
*xsize = 0;
|
||||||
|
*ysize = 0;
|
||||||
|
return;
|
||||||
|
}
|
||||||
GetWindowText(hwnd, buffer, strlen + 1);
|
GetWindowText(hwnd, buffer, strlen + 1);
|
||||||
|
|
||||||
hdc = GetDC(hwnd);
|
hdc = GetDC(hwnd);
|
||||||
|
|
|
@ -32,8 +32,6 @@
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <tchar.h>
|
#include <tchar.h>
|
||||||
|
|
||||||
extern void uilib_get_general_window_extents(HWND hwnd, int *xsize, int *ysize);
|
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
unsigned int idc;
|
unsigned int idc;
|
||||||
int element_type;
|
int element_type;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user