+8
−0
Loading
Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more
This class inherits from std::optional, which does not have a virtual destructor. As such, deleting an object of ftl::Optional using a pointer to its base class has undefined behavior. Prevent this by removing new from ftl::Optional. This is generally not the right way to use it anyway, and in fact this builds as is. Delete new[] while we're at it. This should be enough of a signal not to try to heap allocate these. It's still possible for a programmer to circumvent these deletions, but they prevent the straightforward (broken) use case. Bug: 261035092 Test: make Change-Id: Iafdaf98ed88920162af2b445caf0e4a69be51ab5