+123
−0
+66
−28
Loading
Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more
Make clear() actually clear wp m_refs, so that nulls compare equal. Make equality consistent with < and >, ensuring that a weak pointer cannot be both equal to and greater than another. Don't rely on the built-in < and > operators to correctly order different objects. The standard does not guarantee that, and there is a risk of compiler relying on that lack of guarantee. Remove unnecessary comparison overloads, especially those comparing a wp<> to an sp<>. Change the remaining wp<> to sp<> comparisons to check for equivalence of the mRefs pointer instead of the object address, thus eliminating the dubious equal comparison result for a dead wp<> and an sp<> that happen to point to the same object address. Add comparison tests. Test: Treehugger, boot AOSP, atest RefBase Bug: 126922090 Change-Id: I15911150e0fc85ace2c4b77d337826e12793c690