rjmccall added a comment.

I remember this coming up 7-8 years ago.  I intentionally decided against doing 
a copy/release when assigning to `__weak` because if the block wasn't already 
guaranteed to be copied then it was probably better to crash than to silently 
assign a value that's about to be deallocated.  Note that copying the block we 
assign into `wb` doesn't change anything about the block stored in `b`.

I don't know why Chromium is building a weak reference to a block in the first 
place, but assuming they have a good reason to be doing it, they should fix 
their code to force a copy before forming a weak reference.


Repository:
  rC Clang

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D58514/new/

https://reviews.llvm.org/D58514



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to