On 8/12/2014 12:28 PM, Joshua Cranmer 🐧 wrote:
But now that nsCOMPtr/nsRefPtr support proper move constructors, is
there any reason for already_AddRefed to exist at all in our
codebase? Could we replace every already_AddRefed return value with a
nsCOMPtr?
The rationale for why we still had it was that:
nsIFoo *foobar = ReturnsACOMPtr();
silently leaks.
Really? I thought that in this case there would be no leak because the
(temporary-returned) nsCOMPtr destructor would properly free the object.
The problem is that `foobar` potentially points to an object which has
already been released.
--BDS
_______________________________________________
dev-platform mailing list
dev-platform@lists.mozilla.org
https://lists.mozilla.org/listinfo/dev-platform