Nelson Mandela is in good spirits and doctors are happy with his progress, President Jacob Zuma has said after visiting the former leader in hospital.
Mr Zuma said in a statement that Mr Mandela, 94, was happy to have visitors on Christmas Day.
He was admitted to hospital in the South African capital, Pretoria, two weeks ago and has been treated for a lung infection and gallstones.
Mr Mandela spent 27 years in jail for fighting against the apartheid regime.
He served as South Africa's first black president from 1994 to 1999 and is regarded by many as the father of the nation.
His health has been a cause of concern for many years.
He first contracted tuberculosis in the 1980s while detained in Robben Island prison.
He has been admitted to hospital on three occasions in the past two years.
Mr Zuma said: "We found him in good spirits. He shouted my clan name, Nxamalala, as I walked into the ward.
"He was happy to have visitors on this special day and is looking much better."
Mr Mandela lives in Qunu, a small rural village in Eastern Cape province, where he says he spent the happiest days of his childhood.
He retired from public life in 2004 and has been rarely seen in public since.