From bb15aa8bfd1b272d3b4a54e7a23a960691f98884 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 5 Nov 2015 19:41:57 +0100 Subject: [PATCH] fix crash output --- vm/kvm/kvm.go | 7 +++++-- vm/qemu/qemu.go | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/vm/kvm/kvm.go b/vm/kvm/kvm.go index 97b72e7f..2b76c9b1 100644 --- a/vm/kvm/kvm.go +++ b/vm/kvm/kvm.go @@ -254,8 +254,11 @@ func (inst *Instance) Run() { outputMu.Unlock() time.Sleep(5 * time.Second) outputMu.Lock() - output = output[matchPos:] - loc = crashRe.FindAllIndex(output, -1) + loc = crashRe.FindAllIndex(output[matchPos:], -1) + for i := range loc { + loc[i][0] += matchPos + loc[i][1] += matchPos + } start := loc[0][0] - contextSize if start < 0 { start = 0 diff --git a/vm/qemu/qemu.go b/vm/qemu/qemu.go index e6252adb..ad868eaa 100644 --- a/vm/qemu/qemu.go +++ b/vm/qemu/qemu.go @@ -291,8 +291,11 @@ func (inst *Instance) Run() { outputMu.Unlock() time.Sleep(5 * time.Second) outputMu.Lock() - output = output[matchPos:] - loc = crashRe.FindAllIndex(output, -1) + loc = crashRe.FindAllIndex(output[matchPos:], -1) + for i := range loc { + loc[i][0] += matchPos + loc[i][1] += matchPos + } start := loc[0][0] - contextSize if start < 0 { start = 0