Issue #3416798 by GafgarionMorua, arunkumark, larowlan, smustgrave, DamienMcKenna: Refactor the breadcrumb generation "catch" code (cherry picked from commit 54f3e98a)