Unforgettable
(1996)

Detective Don Bresler (Peter Coyote) killed Mary, the wife of Dr. David Krane (Ray Liotta).

Bresler was a corrupt cop that coerced his partner Det. Boddner into committing crimes. Using Eddie Dutton (Kim Coates) to set up a drug deal, Bresler and Boddner killed the criminals and pocketed the spoils. Boddner, who was having an affair with Mary, mulls turning on Bresler to save himself. Bresler found out and staged a suicide of Bodden that left him in a persistent coma. He then sent Dutton after Mary but Dutton didn't finish the job as David came home. Bresler arrived to kill Dutton after he killed Mary only to find him gone, and Mary still alive, so he killed her himself.

Bresler finds David and Dr. Martha Briggs (Linda Fiorentino) and tries to kill them by setting a fire but David overpowers him and helps Martha escape. David beats up Bresler and pockets a recorder Martha was using to capture the drug test, but got Bresler's confession instead. He drags Bresler out, but drops the recorder. He goes back inside as the fire rages.

The film ends in the hospital with David in a persistent coma like state, due to the multiple drug tests he did to see the visions and the injuries he sustained during the fire. Martha says he could wake up at any time, but they won't know when. Det. Gleick (Christopher McDonald) tells David they got Bresler for the murder of his wife. David, in his coma, imagines a nice day with his wife and daughters. He turns to look and his wife fades away, and he walks off with his daughters, leaving it unknown when or if he will ever wake up from his coma.

Thanks Tim (Spectre)!