diff options
Diffstat (limited to 'section_counters.go')
| -rw-r--r-- | section_counters.go | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/section_counters.go b/section_counters.go index 0a5ba86..f51bd7a 100644 --- a/section_counters.go +++ b/section_counters.go @@ -16,16 +16,17 @@ type sectionCounters struct { } func (sec *sectionCounters) set(level int) *sectionCounters { - if level == sec.curr { + switch { + case level == sec.curr: sec.nums[level]++ - } else if level > sec.curr { + case level > sec.curr: // Check if the section level out of sequence. if level > sec.curr+1 { level = sec.curr + 1 } sec.nums[level] = 1 sec.curr = level - } else { + default: var x int for x = sec.curr; x > level; x-- { sec.nums[x] = 0 |
