ActivityReplay: Check for null pointer, free resource in test.
Bug fixes: Check for a null pointer when verifying a logged gesture;
delete the interpreter we allocate in the unittest.
BUG=chromium-os:21926
TEST=unittest; tested on device
Change-Id: I7daa1b902fd910d7f5d3ae919e071803e701804a
diff --git a/src/activity_replay.cc b/src/activity_replay.cc
index 7225f45..6da4a6e 100644
--- a/src/activity_replay.cc
+++ b/src/activity_replay.cc
@@ -386,9 +386,9 @@
}
break;
case ActivityLog::kGesture:
- if (*last_gs != entry->details.gesture) {
+ if (!last_gs || *last_gs != entry->details.gesture) {
Err("Incorrect gesture. Expected %s, but log has %s",
- last_gs->String().c_str(),
+ last_gs ? last_gs->String().c_str() : "(null)",
entry->details.gesture.String().c_str());
all_correct = false;
}
diff --git a/src/activity_replay_unittest.cc b/src/activity_replay_unittest.cc
index f4da729..79a298e 100644
--- a/src/activity_replay_unittest.cc
+++ b/src/activity_replay_unittest.cc
@@ -33,6 +33,7 @@
ActivityReplay replay(prop_reg);
replay.Parse(log_contents);
replay.Replay(interpreter);
+ DeleteGestureInterpreter(c_interpreter);
}
} // namespace gestures