equal
deleted
inserted
replaced
129 for(i=0; i<KMaxLocalDrives; ++i) |
129 for(i=0; i<KMaxLocalDrives; ++i) |
130 if(aDevice->iDrivesSupported&(1<<i)) |
130 if(aDevice->iDrivesSupported&(1<<i)) |
131 { |
131 { |
132 TRACEB(("DCodePagedMemoryManager::InstallPagingDevice drive=%d",i)); |
132 TRACEB(("DCodePagedMemoryManager::InstallPagingDevice drive=%d",i)); |
133 TAny* null = 0; |
133 TAny* null = 0; |
|
134 if(aDevice->iType & DPagingDevice::EMediaExtension) |
|
135 __e32_atomic_store_ord_ptr(&iDevice[i], null); |
134 if(!__e32_atomic_cas_ord_ptr(&iDevice[i], &null, aDevice)) // set iDevice[i]=aDevice if it was originally 0 |
136 if(!__e32_atomic_cas_ord_ptr(&iDevice[i], &null, aDevice)) // set iDevice[i]=aDevice if it was originally 0 |
135 { |
137 { |
136 // paging device already registered... |
138 // paging device already registered... |
137 TRACEB(("DCodePagedMemoryManager::InstallPagingDevice returns ALREADY EXISTS!")); |
139 TRACEB(("DCodePagedMemoryManager::InstallPagingDevice returns ALREADY EXISTS!")); |
138 return KErrAlreadyExists; |
140 return KErrAlreadyExists; |