
Samson spared week from death 14/01/06 A DOG on death row with a taste for men in uniform has been given a reprieve . Magistrates had imposed a death sentence on three-year-old rottweiler Samson after they heard he had attacked a postman and a police officer . They were bitten in separate incidents while calling at the home of owner Mandie Jayne Henderson , in Newton Aycliffe , County Durham . Despite a previous order by South Durham magistrates for Samson to be kept under control after the attack on the postman , he bit the PC on the arm in the back yard of the house , in Booth Walk , last January . The officer , who was calling after a further complaint about the dog , retreated bleeding from puncture wounds . Magistrates imposed the destruction order at a hearing in August , and confirmed their ruling last month . But this week , eight days before he was due to be put down , Ms Henderson appealed against the sentence at Durham Crown Court . Her barrister , James Robinson , said that other than a clash with another dog while being walked by Ms Henderson 's former partner , there had been no further incidents since the officer was bitten . Mr Robinson told the court that Samson was muzzled when taken for a walk . He said : " She will do whatever is necessary to spare this dog . " She did not believe he had to be kept muzzled when he was at home in the yard , but she can keep him muzzled all the time at home , if necessary . " Judge Michael Cartlidge , sitting with two magistrates , upheld the appeal , sparing Samson , but imposed a number of conditions on 39-year-old Ms Henderson . These include keeping Samson muzzled and on a lead at all times when not at home . Warning notices must also be put up outside the house . Judge Cartlidge said : " I hope this will ensure there is no further trouble in future . " Leaving court , Ms Henderson said : " He just does not seem to like men in uniforms , but I have had people at the house and he is as soft as can be with them . " 