private void NameUpdateThread( object d )
{
UpdateData data = (UpdateData)d;
bool abort = false;
do {
UpdateJob job = null;
lock( data.jobs ) {
if( data.jobs.Count > 0 ) {
job = data.jobs.Dequeue();
} else {
abort = true;
}
}
if( job != null ) {
string name = GetDisplayName( Profile.DirNametoID64( job.dir ) );
lock( data.tLock ) {
if( data.tLock.Aborted ) abort = true;
else {
UpdateDisplayNameInList( job.index, name );
}
}
}
} while( !abort );
OnNameUpdateThreadTerminate();
}