Authorities said Sunday that the shooter was cooperative when officers took him into custody.
Witnesses said people ran, screaming and ducking for cover, when 42-year-old Marcos Gurrola fired into the air and onto the ground Saturday afternoon near the Macy's department store at the open-air Fashion Island mall in Newport Beach.
He paused to reload several times, police said.
Then Gurrola put the gun down and offered no resistance when bicycle officers arrested him around 4:30 p.m., said Lt. John Lewis.
"He just gave up," Lewis said.
Investigators have no motive, Lewis said.
Gurrola, of Garden Grove, was charged with shooting at an inhabited dwelling. He was being held Sunday on $250,000 bail. Police recovered a handgun and ammunition.
Officials said one person suffered a minor injury while running away, and was treated at the scene.
The gunfire caused panic, coming a day after a gunman killed 26 children and adults at a Connecticut elementary school, and days after a deadly mall shooting in Oregon.
The mall, near Pacific Coast Highway in the heart of Newport Beach, was crowded with holiday shoppers and the parking lot was full. Many people ran into stores, a movie theater and other businesses.
"It's a miracle nobody got injured," said Sven Maric, who said he was celebrating his wife's birthday at a restaurant patio about 50 yards away. "The bullets had to land somewhere, and he shot so many."
Some stores voluntarily closed their doors and kept shoppers inside while police investigated.
Bret McGaughey, 22, of Laguna Beach, said he was with his mom in the Apple store when shoppers ran to the rear of the store as employees locked the front entrance. He estimated that up to 100 people stayed in the back of the store for about 30 minutes until Apple employees announced that police said it was safe to reopen the doors.
Sources say Gurrola is a licensed security guard. According to state records, his firearm permit expired in 2001.
Gurrola doesn't appear to have a criminal record.
A telephone number for a Marcos Gurrola was disconnected.
On Tuesday, a gunman at an Oregon shopping mall killed two people and wounded a third amid a holiday crowd estimated at 10,000 people. Clackamas County authorities are still trying to determine why the gunman opened fire before killing himself.