A Greyhound Bus en route to Boise from Portland had a scary delay Wednesday night on Interstate 84 near Troutdale, Ore., after police say a passenger attacked the driver.

John Stewart was on the bus and we talked with him about the attack when he finally arrived in Boise Thursday afternoon.

"We were on our way out from Portland," said Stewart, who is from Washington. "Then we felt the bus start to swerve side to side."

He says at first he thought the bus driver was having a medical problem, but then he saw what was really going on. The driver was being assaulted.

"When I looked up there was a guy sitting behind who had broken through the door (plastic divider) and started attacking him wanting him to pull over or something," said Stewart. "We didn't know why he was doing it."

Police say the suspect, identified as Robert Vasquez, punched the driver and even cut his throat with a knife. Stewart says one passenger sprang into action, but he was hurt as well.

"A guy comes up running from the back trying to stop him and ends up getting cut across his check and stabbed in the back," said Stewart.

Stewart says at that point he ran up to help and the bus was then able to be pulled over by the driver.

"Once we pulled over I was trying to help out with the wounded," said Stewart.

Law enforcement arrived shortly after and arrested Vasquez. The two people injured were taken to the hospital. The driver, Clint Lawson, was released from the hospital Thursday with medical tape over his throat. His wife says he will be alright.

Police say the passenger who was attacked had non life-threatening injuries.

Vasquez will appear in court on Friday. He is charged with attempted murder, aggravated assault, and 28 counts of reckless endangerment.