Actress Cameron Diaz appears to have committed a major fashion crime in Peru.

The voice of Princess Fiona in the animated Shrek films may have inadvertently offended Peruvians.

They suffered decades of violence from a Maoist guerrilla insurgency by touring there on Friday with a bag emblazoned with one of Mao Zedong's favourite political slogans.

While she explored the Inca city of Machu Picchu high in Peru's Andes, Diaz wore over her shoulder an olive green messenger bag emblazoned with a red star and the words 'Serve the People' printed in Chinese on the flap, perhaps Chinese Communist leader Mao's most famous political slogan.

While the bags are marketed as trendy fashion accessories in some world capitals, the phrase has particular resonance in Peru.

The Maoist Shining Path insurgency took Peru to the edge of chaos in the 1980s and early 1990s with a campaign of massacres, assassinations and bombings.

Nearly 70,000 people were killed during the insurgency.

A prominent Peruvian human rights activist said the star of There's Something About Mary should have been a little more aware of local sensitivities when picking her accessories.

"It alludes to a concept that did so much damage to Peru, that brought about so many victims," said Pablo Rojas about the bag's slogan.

"I don't think she should have used that bag where the followers of that ideology" did so much damage.

"TerrorStorm is something that should be seen by everyone, no matter what their stance/affiliation/political bent. " - Rich Rosell, Digitally Obsessed UK Get TerrorStorm on DVD today