A bicyclist who stopped for a break on a bench near an Oregon river is being called a hero after he jumped in the icy water to save a stranded swimmer.

The swimmer jumped into the Willamette River in Portland, Ore., Sunday afternoon from the East Bank Esplanade, a 1.5 mile path along the river's shore, according to officials with the Portland Fire and Rescue.

Witnesses say the swimmer, later identified by authorities as a homeless man, began struggling about halfway to the public dock he was headed for, about 75 feet from shore.

Bicyclist Kevin Pratt had been cycling along the Esplanade's path and had stopped for a break when he spotted the man struggling in the water. While other witnesses stood by, Pratt stripped to his underwear and jumped in to the icy river, reported local affiliate KATU.

Pratt was able to pull the man to shore but found him unconscious. Portland firefighters responding to reports of a man in the water arrived just moments later to find Pratt and another passerby administering CPR.

Pratt's quick actions, all caught on video by another witness, meant the man was only in the water for about five minutes, according to KATU.

Once treated at the scene, the swimmer was taken by ambulance to a nearby hospital, where he was listed in serious condition. Officials have not released his identity.