Copy completion block before adding to dictionary

A obj-c block should be copied before added to a dictionary.
For non-ARC code, the copied block needs to be autoreleased.
Merge branch 't089-fix_conversion'