[Deinterlace-checkins] CVS: DScaler/Disasm disasm.cpp,1.7,1.8
Brought to you by:
adcockj,
dschmelzer
From: John A. <ad...@us...> - 2007-02-22 09:42:09
|
Update of /cvsroot/deinterlace/DScaler/Disasm In directory sc8-pr-cvs12.sourceforge.net:/tmp/cvs-serv16499/Disasm Modified Files: disasm.cpp Log Message: fixed issues with VS2005 Index: disasm.cpp =================================================================== RCS file: /cvsroot/deinterlace/DScaler/Disasm/disasm.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** disasm.cpp 13 Dec 2006 01:10:01 -0000 1.7 --- disasm.cpp 22 Feb 2007 09:42:05 -0000 1.8 *************** *** 449,454 **** { for(i=0; i<4; ++i) { ! int tprematch = std::mismatch(last_match[i].begin(), last_match[i].end(), r.match_stream.begin()).first - last_match[i].begin(); ! int tpostmatch = std::mismatch(last_match[i].rbegin(), last_match[i].rend(), r.match_stream.rbegin()).first - last_match[i].rbegin(); if (tprematch+tpostmatch > prematch+postmatch) { --- 449,457 ---- { for(i=0; i<4; ++i) { ! size_t l2 = last_match[i].size(); ! if (l2 > l) ! l2 = l; ! int tprematch = std::mismatch(last_match[i].begin(), last_match[i].begin() + l2, r.match_stream.begin()).first - last_match[i].begin(); ! int tpostmatch = std::mismatch(last_match[i].rbegin(), last_match[i].rbegin() + l2, r.match_stream.rbegin()).first - last_match[i].rbegin(); if (tprematch+tpostmatch > prematch+postmatch) { *************** *** 490,495 **** for(i=0; i<4; ++i) { ! int tprematch = std::mismatch(last_result[i].begin(), last_result[i].end(), r.result.begin()).first - last_result[i].begin(); ! int tpostmatch = std::mismatch(last_result[i].rbegin(), last_result[i].rend(), r.result.rbegin()).first - last_result[i].rbegin(); if (tprematch+tpostmatch > prematch+postmatch) { --- 493,501 ---- for(i=0; i<4; ++i) { ! size_t l2 = last_result[i].size(); ! if (l2 > l) ! l2 = l; ! int tprematch = std::mismatch(last_result[i].begin(), last_result[i].begin() + l2, r.result.begin()).first - last_result[i].begin(); ! int tpostmatch = std::mismatch(last_result[i].rbegin(), last_result[i].rbegin() + l2, r.result.rbegin()).first - last_result[i].rbegin(); if (tprematch+tpostmatch > prematch+postmatch) { *************** *** 513,517 **** s = ruleHeap.size(); ruleHeap.resize(s + l - prematch - postmatch); ! std::copy(r.result.begin() + prematch, r.result.begin() + l - postmatch, &ruleHeap[s]); decomp_bytes += l+1; --- 519,523 ---- s = ruleHeap.size(); ruleHeap.resize(s + l - prematch - postmatch); ! std::copy(r.result.begin() + prematch, r.result.begin() + l - postmatch, ruleHeap.begin() + s); decomp_bytes += l+1; |