Fix unsafe AuthorizationSet copy constructor am: 856761d5b0
am: b1167fd254
Change-Id: I1c5ac75308e24e5ef4644932d79be0c06392631f
diff --git a/include/keymaster/authorization_set.h b/include/keymaster/authorization_set.h
index 1a7894d..bebbfff 100644
--- a/include/keymaster/authorization_set.h
+++ b/include/keymaster/authorization_set.h
@@ -78,8 +78,9 @@
// Copy constructor.
AuthorizationSet(const AuthorizationSet& set) : Serializable(), indirect_data_(nullptr) {
elems_ = nullptr;
- Reinitialize(set.elems_, set.elems_size_);
error_ = set.error_;
+ if (error_ != OK) return;
+ Reinitialize(set.elems_, set.elems_size_);
}
// Move constructor.