I think they didn't need to hand out the two high 2nd rounders that Bergevin consented. The Hawks had their backs against the wall, they couldn't afford Shaw's contractual demands, they needed to get rid of him. Bergevin overpaid in the circumstances.
Second, it was also a matter of the term that Bergevin agreed to. Too long for a third liner.
Third, he's overpaid relative to the type of player he is. He's a third liner at best who plays a style that is not suited to his body-type/ endurance level, with the result that he's often injured and more importantly, has already suffered multiple concussions. He's undersized but tries to take on players bigger than him and he can't handle them.
Fourth, from a pure asset mix point of view, the team already had Gallagher who provides a similar style of play but who is a better scorer. He wasn't needed. He's just a Bergevin nostalgia infatuation -- a guy he scouted and that was drafted while he was with the Hawks. This move was made for all the wrong reasons.