Try to work around aliasing issues for blocks by checking whether the outer context info is identical and ensure to pass the same object

Signed-off-by: Stefan Marr <git@stefan-marr.de>