Skip to content

Commit

Permalink
Merge pull request #247 from ryanmjacobs:fix_pointer_checks
Browse files Browse the repository at this point in the history
  • Loading branch information
jacksonmj committed May 16, 2015
2 parents 26e170a + 55a3067 commit 34567bc
Show file tree
Hide file tree
Showing 52 changed files with 141 additions and 266 deletions.
3 changes: 1 addition & 2 deletions src/Format.cpp
Expand Up @@ -260,8 +260,7 @@ struct PNGChunk
}
~PNGChunk()
{
if (Data)
delete[] Data;
delete[] Data;
}
};

Expand Down
6 changes: 3 additions & 3 deletions src/Misc.cpp
Expand Up @@ -462,9 +462,9 @@ int register_extension()
returnval = 1;
finalise:

if(iconname) free(iconname);
if(opencommand) free(opencommand);
if(currentfilename) free(currentfilename);
free(iconname);
free(opencommand);
free(currentfilename);

return returnval;
#elif defined(LIN)
Expand Down
73 changes: 27 additions & 46 deletions src/client/Client.cpp
Expand Up @@ -343,10 +343,10 @@ bool Client::DoInstallation()
returnval = 1;
finalise:

if(iconname) free(iconname);
if(opencommand) free(opencommand);
if(protocolcommand) free(protocolcommand);
if(currentfilename) free(currentfilename);
free(iconname);
free(opencommand);
free(protocolcommand);
free(currentfilename);

return returnval;
#elif defined(LIN)
Expand Down Expand Up @@ -681,8 +681,7 @@ void Client::Tick()

if(status != 200)
{
if(data)
free(data);
free(data);
}
else if(data)
{
Expand Down Expand Up @@ -768,8 +767,7 @@ void Client::Tick()
//Do nothing
}

if(data)
free(data);
free(data);
}
}
}
Expand Down Expand Up @@ -952,7 +950,7 @@ RequestStatus Client::UploadSave(SaveInfo & save)
{
if(strncmp((const char *)data, "OK", 2)!=0)
{
if(gameData) delete[] gameData;
delete[] gameData;
lastError = std::string((const char *)data);
free(data);
return RequestFailure;
Expand All @@ -973,14 +971,14 @@ RequestStatus Client::UploadSave(SaveInfo & save)
}
}
free(data);
if(gameData) delete[] gameData;
delete[] gameData;
return RequestOkay;
}
else if(data)
{
free(data);
}
if(gameData) delete[] gameData;
delete[] gameData;
return RequestFailure;
}

Expand Down Expand Up @@ -1400,8 +1398,7 @@ LoginStatus Client::Login(std::string username, std::string password, User & use
{
lastError = http_ret_text(dataStatus);
}
if(data)
free(data);
free(data);
return LoginError;
}

Expand Down Expand Up @@ -1447,12 +1444,10 @@ RequestStatus Client::DeleteSave(int saveID)
lastError = http_ret_text(dataStatus);
goto failure;
}
if(data)
free(data);
free(data);
return RequestOkay;
failure:
if(data)
free(data);
free(data);
return RequestFailure;
}

Expand Down Expand Up @@ -1507,12 +1502,10 @@ RequestStatus Client::AddComment(int saveID, std::string comment)
lastError = http_ret_text(dataStatus);
goto failure;
}
if(data)
free(data);
free(data);
return RequestOkay;
failure:
if(data)
free(data);
free(data);
return RequestFailure;
}

Expand Down Expand Up @@ -1563,12 +1556,10 @@ RequestStatus Client::FavouriteSave(int saveID, bool favourite)
lastError = http_ret_text(dataStatus);
goto failure;
}
if(data)
free(data);
free(data);
return RequestOkay;
failure:
if(data)
free(data);
free(data);
return RequestFailure;
}

Expand Down Expand Up @@ -1621,12 +1612,10 @@ RequestStatus Client::ReportSave(int saveID, std::string message)
lastError = http_ret_text(dataStatus);
goto failure;
}
if(data)
free(data);
free(data);
return RequestOkay;
failure:
if(data)
free(data);
free(data);
return RequestFailure;
}

Expand Down Expand Up @@ -1675,12 +1664,10 @@ RequestStatus Client::UnpublishSave(int saveID)
lastError = http_ret_text(dataStatus);
goto failure;
}
if(data)
free(data);
free(data);
return RequestOkay;
failure:
if(data)
free(data);
free(data);
return RequestFailure;
}

Expand All @@ -1698,8 +1685,7 @@ RequestStatus Client::PublishSave(int saveID)
const char *const postDatas[] = { "" };
size_t postLengths[] = { 1 };
char *data = http_multipart_post(urlStream.str().c_str(), postNames, postDatas, postLengths, userIDStream.str().c_str(), NULL, authUser.SessionID.c_str(), &dataStatus, NULL);
if (data)
free(data);
free(data);
}
else
{
Expand Down Expand Up @@ -1795,7 +1781,7 @@ SaveInfo * Client::GetSave(int saveID, int saveDate)
}
else
{
if (data) free(data);
free(data);
lastError = http_ret_text(dataStatus);
}
return NULL;
Expand Down Expand Up @@ -2008,8 +1994,7 @@ std::vector<SaveComment*> * Client::GetComments(int saveID, int start, int count
{
lastError = http_ret_text(dataStatus);
}
if(data)
free(data);
free(data);
return commentArray;
}

Expand Down Expand Up @@ -2057,8 +2042,7 @@ std::vector<std::pair<std::string, int> > * Client::GetTags(int start, int count
{
lastError = http_ret_text(dataStatus);
}
if(data)
free(data);
free(data);
return tagArray;
}

Expand Down Expand Up @@ -2140,8 +2124,7 @@ std::vector<SaveInfo*> * Client::SearchSaves(int start, int count, std::string q
{
lastError = http_ret_text(dataStatus);
}
if(data)
free(data);
free(data);
return saveArray;
}

Expand Down Expand Up @@ -2329,8 +2312,7 @@ std::list<std::string> * Client::RemoveTag(int saveID, std::string tag)
{
lastError = http_ret_text(dataStatus);
}
if(data)
free(data);
free(data);
return tags;
}

Expand Down Expand Up @@ -2390,8 +2372,7 @@ std::list<std::string> * Client::AddTag(int saveID, std::string tag)
{
lastError = http_ret_text(dataStatus);
}
if(data)
free(data);
free(data);
return tags;
}

Expand Down
45 changes: 15 additions & 30 deletions src/client/GameSave.cpp
Expand Up @@ -1075,17 +1075,13 @@ void GameSave::readOPS(char * data, int dataLength)
fail:
//Clean up everything
bson_destroy(&b);
if(freeIndices)
free(freeIndices);
if(partsSimIndex)
free(partsSimIndex);
free(freeIndices);
free(partsSimIndex);
throw ParseException(ParseException::Corrupt, "Save data corrupt");
fin:
bson_destroy(&b);
if(freeIndices)
free(freeIndices);
if(partsSimIndex)
free(partsSimIndex);
free(freeIndices);
free(partsSimIndex);
}

void GameSave::readPSv(char * data, int dataLength)
Expand Down Expand Up @@ -2191,28 +2187,17 @@ char * GameSave::serialiseOPS(unsigned int & dataLength)

fin:
bson_destroy(&b);
if(partsData)
free(partsData);
if(wallData)
free(wallData);
if(fanData)
free(fanData);
if (elementCount)
delete[] elementCount;
if (partsSaveIndex)
free(partsSaveIndex);
if (soapLinkData)
free(soapLinkData);
if (partsPosData)
free(partsPosData);
if (partsPosFirstMap)
free(partsPosFirstMap);
if (partsPosLastMap)
free(partsPosLastMap);
if (partsPosCount)
free(partsPosCount);
if (partsPosLink)
free(partsPosLink);
free(partsData);
free(wallData);
free(fanData);
delete[] elementCount;
free(partsSaveIndex);
free(soapLinkData);
free(partsPosData);
free(partsPosFirstMap);
free(partsPosLastMap);
free(partsPosCount);
free(partsPosLink);

return (char*)outputData;
}
Expand Down
15 changes: 5 additions & 10 deletions src/client/HTTP.cpp
Expand Up @@ -557,8 +557,7 @@ int http_async_req_status(void *ctx)
{
cx->tptr = 0;
cx->tlen = 0;
if (cx->tbuf)
free(cx->tbuf);
free(cx->tbuf);
cx->state = HTS_RECV;
}
cx->last = now;
Expand Down Expand Up @@ -684,11 +683,9 @@ void http_async_req_close(void *ctx)
{
cx->keep = 1;
tmp = http_async_req_stop(ctx, NULL, NULL);
if (tmp)
free(tmp);
free(tmp);
}
if (cx->fdhost)
free(cx->fdhost);
free(cx->fdhost);
PCLOSE(cx->fd);
free(ctx);
}
Expand Down Expand Up @@ -1088,8 +1085,7 @@ char *http_multipart_post(const char *uri, const char *const *names, const char
return http_async_req_stop(ctx, ret, len);

fail:
if (data)
free(data);
free(data);
if (own_plen)
free(plens);
if (ret)
Expand Down Expand Up @@ -1278,8 +1274,7 @@ void *http_multipart_post_async(const char *uri, const char *const *names, const
return ctx;

fail:
if (data)
free(data);
free(data);
if (own_plen)
free(plens);
//if (ret)
Expand Down
6 changes: 2 additions & 4 deletions src/client/SaveFile.cpp
Expand Up @@ -65,9 +65,7 @@ void SaveFile::SetDisplayName(std::string displayName)
}

SaveFile::~SaveFile() {
if(gameSave)
delete gameSave;
if(thumbnail)
delete thumbnail;
delete gameSave;
delete thumbnail;
}

3 changes: 1 addition & 2 deletions src/client/SaveInfo.cpp
Expand Up @@ -176,7 +176,6 @@ GameSave * SaveInfo::GetGameSave()

void SaveInfo::SetGameSave(GameSave * saveGame)
{
if(gameSave)
delete gameSave;
delete gameSave;
gameSave = saveGame;
}
3 changes: 1 addition & 2 deletions src/client/requestbroker/APIRequest.cpp
Expand Up @@ -61,8 +61,7 @@ RequestBroker::ProcessResponse APIRequest::Process(RequestBroker & rb)
//#ifdef DEBUG
std::cout << typeid(*this).name() << " Request for " << URL << " failed with status " << status << std::endl;
//#endif
if(data)
free(data);
free(data);

return RequestBroker::Failed;
}
Expand Down
3 changes: 1 addition & 2 deletions src/client/requestbroker/ImageRequest.cpp
Expand Up @@ -76,8 +76,7 @@ RequestBroker::ProcessResponse ImageRequest::Process(RequestBroker & rb)
#ifdef DEBUG
std::cout << typeid(*this).name() << " Request for " << URL << " failed with status " << status << std::endl;
#endif
if(data)
free(data);
free(data);

return RequestBroker::Failed;
}
Expand Down
3 changes: 1 addition & 2 deletions src/client/requestbroker/ThumbRenderRequest.cpp
Expand Up @@ -38,8 +38,7 @@ RequestBroker::ProcessResponse ThumbRenderRequest::Process(RequestBroker & rb)

ThumbRenderRequest::~ThumbRenderRequest()
{
if(Save)
delete Save;
delete Save;
}

void ThumbRenderRequest::Cleanup()
Expand Down

0 comments on commit 34567bc

Please sign in to comment.