aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/repro
diff options
context:
space:
mode:
authorAndrey Konovalov <andreyknvl@google.com>2019-05-27 19:03:42 +0200
committerDmitry Vyukov <dvyukov@google.com>2019-05-27 20:03:37 +0200
commit6bd615015dc05e75bc8979aab3bc710abd1fdffb (patch)
tree333b2571bc2ba570616d6f31860163992b0b7658 /pkg/repro
parentd53d0cd242d453b353b1815c2a15df59297bb873 (diff)
pkg/repro: don't double-reverse log entries
For extractProgSingle() lastEntries are already reversed, so no need to call reverseEntries(). Also for extractProgBisect() there's no point in reversing the entries, as the idea is to try connecting multiple programs in chronological order.
Diffstat (limited to 'pkg/repro')
-rw-r--r--pkg/repro/repro.go12
1 files changed, 2 insertions, 10 deletions
diff --git a/pkg/repro/repro.go b/pkg/repro/repro.go
index 592761b9e..abd0dd973 100644
--- a/pkg/repro/repro.go
+++ b/pkg/repro/repro.go
@@ -277,7 +277,7 @@ func (ctx *context) extractProg(entries []*prog.LogEntry) (*Result, error) {
for _, timeout := range ctx.timeouts {
// Execute each program separately to detect simple crashes caused by a single program.
// Programs are executed in reverse order, usually the last program is the guilty one.
- res, err := ctx.extractProgSingle(reverseEntries(lastEntries), timeout)
+ res, err := ctx.extractProgSingle(lastEntries, timeout)
if err != nil {
return nil, err
}
@@ -292,7 +292,7 @@ func (ctx *context) extractProg(entries []*prog.LogEntry) (*Result, error) {
}
// Execute all programs and bisect the log to find multiple guilty programs.
- res, err = ctx.extractProgBisect(reverseEntries(entries), timeout)
+ res, err = ctx.extractProgBisect(entries, timeout)
if err != nil {
return nil, err
}
@@ -758,14 +758,6 @@ func chunksToStr(chunks [][]*prog.LogEntry) string {
return log
}
-func reverseEntries(entries []*prog.LogEntry) []*prog.LogEntry {
- last := len(entries) - 1
- for i := 0; i < len(entries)/2; i++ {
- entries[i], entries[last-i] = entries[last-i], entries[i]
- }
- return entries
-}
-
func encodeEntries(entries []*prog.LogEntry) []byte {
buf := new(bytes.Buffer)
for _, ent := range entries {