Only lock once while accessing member objects.

Previously we locked/unlocked the internal mutex twice to get
d->results. Also we created an unecessary copy of the list.
No need to call QString::number on an parameter to QString::arg()