Changeset 75 in dev for BasicCompiler_Common/Debug.cpp
- Timestamp:
- Mar 20, 2007, 4:36:16 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler_Common/Debug.cpp
r73 r75 224 224 SendDlgItemMessage(hMainDlg,IDC_DEBUGLIST,EM_REPLACESEL,0,(LPARAM)buffer); 225 225 } 226 SubInfo*GetSubFromObp(ULONG_PTR pos){227 extern SubInfo**ppSubHash;228 SubInfo *psi;226 UserProc *GetSubFromObp(ULONG_PTR pos){ 227 extern UserProc **ppSubHash; 228 UserProc *pUserProc; 229 229 int i2; 230 230 231 231 for(i2=0;i2<MAX_HASH;i2++){ 232 p si=ppSubHash[i2];233 while(p si){234 if(rva_to_real(p si->CompileAddress) <= pos &&235 pos < rva_to_real(p si->EndOpAddr))236 return p si;237 238 p si=psi->pNextData;232 pUserProc=ppSubHash[i2]; 233 while(pUserProc){ 234 if(rva_to_real(pUserProc->beginOpAddress) <= pos && 235 pos < rva_to_real(pUserProc->endOpAddress)) 236 return pUserProc; 237 238 pUserProc=pUserProc->pNextData; 239 239 } 240 240 } … … 447 447 pobj_dti=new CDebugThreadInfo(); 448 448 449 SubInfo *psi;449 UserProc *pUserProc; 450 450 451 451 extern DWORD dwStepRun; … … 681 681 if(!bRet) MessageBox(hMainDlg,"プロセスメモリーの読み込みに失敗","error",MB_OK); 682 682 683 extern SubInfo*pSub_DebugSys_EndProc;683 extern UserProc *pSub_DebugSys_EndProc; 684 684 if((BYTE)temporary[0]==0xE8&& 685 *((long *)(temporary+1))+5==(long)rva_to_real(pSub_DebugSys_EndProc-> CompileAddress)-(long)EIP_RIP(Context)){685 *((long *)(temporary+1))+5==(long)rva_to_real(pSub_DebugSys_EndProc->beginOpAddress)-(long)EIP_RIP(Context)){ 686 686 //プロシージャの終端位置の場合はステップインを行う 687 687 goto StepIn; … … 700 700 else{ 701 701 //プロシージャを識別 702 p si=GetSubFromObp(pobj_dti->lplpObp[pobj_dti->iProcLevel]);702 pUserProc=GetSubFromObp(pobj_dti->lplpObp[pobj_dti->iProcLevel]); 703 703 704 704 //シングルステップON 705 705 WriteProcessMemory(hDebugProcess, 706 (void *)rva_to_real(p si->CompileAddress),707 pobj_DBDebugSection->pobj_now->SingleStepCodeBuffer+p si->CompileAddress,708 p si->EndOpAddr-psi->CompileAddress,706 (void *)rva_to_real(pUserProc->beginOpAddress), 707 pobj_DBDebugSection->pobj_now->SingleStepCodeBuffer+pUserProc->beginOpAddress, 708 pUserProc->endOpAddress-pUserProc->beginOpAddress, 709 709 &lpAccBytes); 710 710 }
Note:
See TracChangeset
for help on using the changeset viewer.