aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Kobetic <mkobetic@gmail.com>2014-06-24 15:30:28 +0000
committerMartin Kobetic <mkobetic@gmail.com>2014-06-24 15:32:04 +0000
commit32e22b3bb6a5f03977e38513b44b33d3cc1d94e5 (patch)
tree91cdfabcc88022804b6ecfdb0de35bdc0156d9f0
parentcopy receiver stats in Stats.Sub() (diff)
downloaddedo-32e22b3bb6a5f03977e38513b44b33d3cc1d94e5.tar.gz
dedo-32e22b3bb6a5f03977e38513b44b33d3cc1d94e5.tar.xz
add some guards for nil pointers
-rw-r--r--db.go11
1 files changed, 9 insertions, 2 deletions
diff --git a/db.go b/db.go
index 1cfa10f..a37f687 100644
--- a/db.go
+++ b/db.go
@@ -575,8 +575,15 @@ type Stats struct {
// This is useful when obtaining stats at two different points and time and
// you need the performance counters that occurred within that time span.
func (s *Stats) Sub(other *Stats) Stats {
- var diff Stats = *s
- diff.TxN = other.TxN - s.TxN
+ var diff Stats
+ if s == nil {
+ return diff
+ }
+ diff = *s
+ if other == nil {
+ return diff
+ }
+ diff.TxN = other.TxN - diff.TxN
diff.TxStats = s.TxStats.Sub(&other.TxStats)
return diff
}