diff options
author | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-16 01:09:27 +0000 |
---|---|---|
committer | agl@chromium.org <agl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-16 01:09:27 +0000 |
commit | f77b5e35ef087f671ab78878fadf7cc30a3fb343 (patch) | |
tree | b8a7aa159d14e3654c8f42b048a7dddc8d146c52 /chrome | |
parent | 3081d1c2adc780bc1767523953d1d11c4292d1be (diff) | |
download | chromium_src-f77b5e35ef087f671ab78878fadf7cc30a3fb343.zip chromium_src-f77b5e35ef087f671ab78878fadf7cc30a3fb343.tar.gz chromium_src-f77b5e35ef087f671ab78878fadf7cc30a3fb343.tar.bz2 |
GCC > 4.2 fix: check return values for fread
http://codereview.chromium.org/149731
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@20833 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome')
-rw-r--r-- | chrome/browser/privacy_blacklist/blacklist_store.cc | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/chrome/browser/privacy_blacklist/blacklist_store.cc b/chrome/browser/privacy_blacklist/blacklist_store.cc index 88ce48b..bf80669 100644 --- a/chrome/browser/privacy_blacklist/blacklist_store.cc +++ b/chrome/browser/privacy_blacklist/blacklist_store.cc @@ -61,7 +61,8 @@ void BlacklistStoreOutput::StoreEntry(const std::string& pattern, uint32 BlacklistStoreInput::ReadUInt() { char buf[sizeof(uint32)]; - fread(buf, 1, sizeof(uint32), file_); + if (fread(buf, 1, sizeof(uint32), file_) != sizeof(uint32)) + return 0; return *reinterpret_cast<uint32*>(buf); } @@ -74,13 +75,13 @@ std::string BlacklistStoreInput::ReadString() { } char buf[8192]; - fread(buf, 1, size, file_); + if (fread(buf, 1, size, file_) != size) + return std::string(); return std::string(buf, size); } BlacklistStoreInput::BlacklistStoreInput(FILE* file) : file_(file) { - char buf[sizeof(cookie)]; - fread(buf, 1, sizeof(cookie), file_); + fseek(file_, sizeof(cookie), SEEK_CUR); } BlacklistStoreInput::~BlacklistStoreInput() { |