That sheriff was an idiot [spoilers]
I get the intent in the story and it's a very effective turning point for Frank when the sheriff shoots those two Osceola boys. Also, it's a dramatic irony that the sheriff survives *because* he's a racist who jumps to the conclusion they're guilty, which means Rocco doesn't "have" to kill him. I'm not calling it a flaw. It works in the movie.
But he's still an idiot. Brilliant police work there, dummy, especially with the gangsters Rocco was meeting with waiting right there in the driveway. Any cop with half a brain would have seen how tense everyone was. Hide it and bide his time? Sure. But going off half-cocked and shooting two innocent people, then leaving the real murderers to go on their merry way? Not so much.
I always wondered how that must have gone down after he found out the truth. He probably would have come up with some excuses to help him sleep at night and never been charged with anything (because that happened back in the day), but his relationship with the Osceolas and the Temples must have been irreparably damaged. I doubt either forgave him. It's those kinds of old hurts that fester for a lifetime in a small town.
Edit: Ah, I forgot that last scene between the sheriff and Temple, but I still think he was an idiot!
Innsmouth Free Press http://www.innsmouthfreepress.com