summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorjar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-07 20:45:40 +0000
committerjar@chromium.org <jar@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-07 20:45:40 +0000
commit1d33670da500d061e670e810a223ed9aa0acc2d9 (patch)
treeb5aa0235eb0d65e59c1a37acc264d0802b4f3d2b /net
parent46728b1ff43220f8515deba08a60e079d193bf4c (diff)
downloadchromium_src-1d33670da500d061e670e810a223ed9aa0acc2d9.zip
chromium_src-1d33670da500d061e670e810a223ed9aa0acc2d9.tar.gz
chromium_src-1d33670da500d061e670e810a223ed9aa0acc2d9.tar.bz2
Avoid divide by zero when gathering stats for SDCH
A reordering of stats gathering produced a vulnerability to divide by zero. bug=1835317 r=mbelshe Review URL: http://codereview.chromium.org/113115 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15578 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net')
-rw-r--r--net/base/sdch_filter.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/net/base/sdch_filter.cc b/net/base/sdch_filter.cc
index 4987472..ce0acb8 100644
--- a/net/base/sdch_filter.cc
+++ b/net/base/sdch_filter.cc
@@ -78,8 +78,10 @@ SdchFilter::~SdchFilter() {
switch (decoding_status_) {
case DECODING_IN_PROGRESS: {
- UMA_HISTOGRAM_PERCENTAGE("Sdch2.Network_Decode_Ratio_a", static_cast<int>(
- (filter_context().GetByteReadCount() * 100) / output_bytes_));
+ if (output_bytes_)
+ UMA_HISTOGRAM_PERCENTAGE("Sdch2.Network_Decode_Ratio_a",
+ static_cast<int>(
+ (filter_context().GetByteReadCount() * 100) / output_bytes_));
UMA_HISTOGRAM_COUNTS("Sdch2.Network_Decode_Bytes_VcdiffOut_a",
output_bytes_);
filter_context().RecordPacketStats(FilterContext::SDCH_DECODE);