| Index: remoting/webapp/base/js/stats_accumulator.js
|
| diff --git a/remoting/webapp/base/js/stats_accumulator.js b/remoting/webapp/base/js/stats_accumulator.js
|
| index e8bda09ff0a11752131ec6af1e1d9604f223c917..8d4cb6b7ef7446c6e133b300409ed5e877c265a3 100644
|
| --- a/remoting/webapp/base/js/stats_accumulator.js
|
| +++ b/remoting/webapp/base/js/stats_accumulator.js
|
| @@ -16,6 +16,8 @@
|
| /** @suppress {duplicate} */
|
| var remoting = remoting || {};
|
|
|
| +(function() {
|
| +
|
| /**
|
| * @constructor
|
| */
|
| @@ -35,11 +37,28 @@ remoting.StatsAccumulator = function() {
|
| };
|
|
|
| /**
|
| - * Adds values to this object.
|
| + * @param {Object<number>} stats
|
| + * @return {boolean} true if there is any non-zero value in stats, false
|
| + * otherwise.
|
| + */
|
| +function hasValidField(stats) {
|
| + for (var key in stats) {
|
| + if (stats[key] !== 0) {
|
| + return true;
|
| + }
|
| + }
|
| + return false;
|
| +}
|
| +
|
| +/**
|
| + * Adds values to this object. Do nothing if newValues has no valid field.
|
| *
|
| * @param {Object<number>} newValues
|
| */
|
| remoting.StatsAccumulator.prototype.add = function(newValues) {
|
| + if (!hasValidField(newValues)) {
|
| + return;
|
| + }
|
| for (var key in newValues) {
|
| this.getValueList(key).push(newValues[key]);
|
| }
|
| @@ -161,10 +180,7 @@ remoting.StatsAccumulator.prototype.getPerfStats = function() {
|
| stats.roundtripLatency = this.calcMean('roundtripLatency');
|
| stats.maxRoundtripLatency = this.calcMax('maxRoundtripLatency');
|
|
|
| - for (var key in stats) {
|
| - if (stats[key] !== 0) {
|
| - return stats;
|
| - }
|
| - }
|
| - return null;
|
| -};
|
| + return hasValidField(stats) ? stats : null;
|
| +};
|
| +
|
| +})();
|
|
|