After a brief hiatus from the big screen, Jennifer Lopez returns with more a whimper than a bang in a rather drab yarn of familial strife that asks us to accept the singing superstar as a battered, down-on-her-luck single mother. She delivers a typically one-note performance in An Unfinished Life that never plumbs the depths of her character's anguish and despair. Her co-stars, including Robert Redford, Morgan Freeman and impressive youngster Becca Gardner, are far better equipped to draw us into the unfolding drama, if only the film wasn't so pedestrian and predictable.

Director Lasse Hallstrom seems well disposed to these picture postcard portraits of close-knit community life, having previously given us Chocolat, The Cider House Rules and The Shipping News. The picturesque landscapes of British Columbia (standing in for Wyoming) look gorgeous thanks to director of photography Oliver Stapleton and there's a twang of rustic charm to Deborah Lurie's original music. But while the locations are somewhere we could happily get lost for a couple of hours, Hallstrom's film isn't. The 107-minute running time seems considerably longer.

When her relationship with her abusive and bullying boyfriend Gary (Damian Lewis) disintegrates, Jean Gilkyson (Lopez) clings on to the one thing which means the most: her beautiful daughter Griff (Becca Gardner). With nowhere else to turn, Jean seeks refuge with her father-in-law Einar (Redford), with whom she has always endured a fractious relationship, ever since his son passed away. To make matters worse, Jean neglected to tell Einar that he had a granddaughter.

Over time, with a little help from Einar's lifelong buddy Mitch Bradley (Freeman), who was badly injured in an accident and now needs regular injections of morphine to tolerate the pain, Jean and her father-in-law heal old wounds and grow close through their shared love of Griff. Jean also contemplates a new romance with the handsome town sheriff, Crane Curtis (Josh Lucas), and finds employment as a waitress in a coffee shop presided over by straight-talking Nina (Camryn Manheim). But the ghosts of the past namely Gary and the grizzly bear which mauled Mitch must be first laid to rest before the Gilkyson clan can truly move on.

The scenes between Lopez and Redford, whose embittered rancher blames his daughter-in-law for his son's death, fail to catch fire. Redford's sparring with Freeman is far more successful, the two old timers trading quips and digging in their heels to defend their standpoint. Equally appealing are conversations between Gardner and the older co-stars she demonstrates an emotional range that eludes her screen mother. Lucas and Lewis are consigned to two-dimensional supporting roles, while Bart the Bear looks suitably menacing as director Hallstrom trudges bravely through the syrupy sentiment.

'Michael Jordan plays ball. Charles Manson kills people. I talk. Everyone has a talent." Nick Naylor, chief spokesman for Big Tobacco. Based on Christopher Buckley's satirical novel about spin inside the multi-billion dollar tobacco industry, Thank You For Smoking is a wickedly funny portrait of one man's shameless abuse of the system for his own ends.

Writer-director Jason Reitman navigates this high-powered, high-profit world of carefully manipulated facts and figures with aplomb, creating a loveable rogue in his anti-hero, Nick, played with effusive charm by Aaron Eckhart. Nick is a sharp-suited company man, who uses his good looks and well-honed oratory skills to deflect any loaded question with one of his own. When he agrees to give a talk in front of his son's class, and the youngsters say their parents have told them not to smoke, Nick counters: "If your parents told you chocolate was dangerous, would you believe them?" Of course, the little ones shake their heads.

"If you argue correctly, you are never wrong," Nick later confides in his 12-year-old son Joey (Cameron Bright), fuelling the youngster's rebellious streak. Believing his own hype, Nick is delighted (and none too surprised) when Washington reporter Heather Holloway (Katie Holmes) asks to interview him for a profile piece; publicity which could offset the threat posed by opportunistic senator Ortolan Finistirre (William H. Macy), who is spearheading a campaign to have 'Poison' stickers positioned on the front of all packs of cigarettes.

True to form, Nick ends up sleeping with Heather, believing that he has her wrapped around his little, nicotine-stained finger. When she betrays him, he's aghast: "I presumed anything said while inside you was privileged!" Meanwhile, Nick pursues an agenda to make smoking sexy again by ingratiating himself to Hollywood super-agent Jeff Megall (Rob Lowe). Jeff is one of the most important movers and shakers in the film community. According to his toady assistant Jack (Adam Brody), Jeff was responsible for creating the phenomenon of Matthew McConaughey: "Before Jeff took him on, he was a face now he's a name!"

Nick hopes that Jeff can magic up a futuristic sci-fi blockbuster featuring Catherine Zeta-Jones, Brad Pitt and a pack of 20. The outlook seems positive. "Can Brad blow smoke rings?" asks Nick. "I don't have that information," replies Jeff matter-of-factly. But how far is Nick willing to go to get the whole world to inhale?

Thank You For Smoking cuts a swathe through all of its targets, poking merciless fun at the entertainment and tobacco industries, and the public's gullibility when faced with a so-called expert. The dialogue crackles with polished one-liners and put-downs. Nick's appearance in front of a congressional hearing chaired by Finistirre is hysterical, with the spin doctor somehow using rhetoric to question dairy exports from the senator's state.

"That's ludicrous. The great state of Vermont will not apologise for its cheese!" splutters the politician. Wonderful stuff.