Cameron Diaz was 34 in Shrek the Halls when she played the character 'Princess Fiona (voice)'.
That was over 15 years ago in 2007.
Today she is 50, and has starred in 61 movies in total, 26 of those since Shrek the Halls was released.
In Shrek the Halls, I think Cameron Diaz looks: