From ae3e7d628a9d9d0f09a277a65a92b3b652cdf30b Mon Sep 17 00:00:00 2001 From: anbr Date: Tue, 5 Oct 2010 19:29:03 +0200 Subject: Fix a segmentation fault on replay (Bug #432) --- watch.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/watch.c b/watch.c index d29d381..f8118d0 100644 --- a/watch.c +++ b/watch.c @@ -106,6 +106,10 @@ ciMonWatch::~ciMonWatch() delete replayTitle; replayTitle = NULL; } + if(replayTitleLast) { + delete replayTitleLast; + replayTitleLast = NULL; + } if(replayTime) { delete replayTime; replayTime = NULL; @@ -518,7 +522,13 @@ bool ciMonWatch::Replay() { if(!replayTitleLast || !replayTitle || strcmp(*replayTitleLast,*replayTitle)) { - replayTitleLast = replayTitle; + if(replayTitleLast) { + delete replayTitleLast; + replayTitleLast = NULL; + } + if(replayTitle) { + replayTitleLast = new cString(*replayTitle); + } return true; } return false; -- cgit v1.2.3