Fixed some shared memory buffers not being cleared properly.
This commit is contained in:
parent
4b9c8cee74
commit
c0f9fd250f
2 changed files with 4 additions and 15 deletions
|
@ -327,18 +327,11 @@ namespace Mist {
|
|||
return true;
|
||||
}
|
||||
if (keyNum < 1){keyNum = 1;}
|
||||
if (isBuffered(track, keyNum)){
|
||||
//get corresponding page number
|
||||
int pageNumber = 0;
|
||||
for (std::map<unsigned long, DTSCPageData>::iterator it = pagesByTrack[track].begin(); it != pagesByTrack[track].end(); it++){
|
||||
if (it->first <= keyNum){
|
||||
pageNumber = it->first;
|
||||
}else{
|
||||
break;
|
||||
}
|
||||
}
|
||||
//abort in case already buffered
|
||||
int pageNumber = bufferedOnPage(track, keyNum);
|
||||
if (pageNumber){
|
||||
pageCounter[track][pageNumber] = 15;
|
||||
VERYHIGH_MSG("Key %u is already buffered in page %d. Cancelling bufferFrame", keyNum, pageNumber);
|
||||
VERYHIGH_MSG("Track %u, key %u is already buffered in page %d. Cancelling bufferFrame", track, keyNum, pageNumber);
|
||||
return true;
|
||||
}
|
||||
if (!pagesByTrack.count(track)){
|
||||
|
|
|
@ -127,10 +127,6 @@ namespace Mist {
|
|||
//A different process will handle this for us
|
||||
return;
|
||||
}
|
||||
//Do nothing if the page is not buffered
|
||||
if (!isBuffered(tid, pageNumber)) {
|
||||
return;
|
||||
}
|
||||
unsigned long mapTid = trackMap[tid];
|
||||
//If the given pagenumber is not a valid page on this track, do nothing
|
||||
if (!pagesByTrack[tid].count(pageNumber)){
|
||||
|
|
Loading…
Add table
Reference in a new issue