VirtualBox

忽略:
時間撮記:
2008-7-8 下午04:29:43 (16 年 以前)
作者:
vboxsync
訊息:

Possible fix for Linux guest regression

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/Disassembler/DisasmReg.cpp

    r10276 r10378  
    554554                if (VBOX_FAILURE(DISFetchReg64(pCtx, pParam->base.reg_gen, &pParamVal->val.val64))) return VERR_INVALID_PARAMETER;
    555555            }
    556             else {
     556            else
     557            {
    557558                AssertFailed();
    558559                return VERR_INVALID_PARAMETER;
     
    562563        if (pParam->flags & USE_INDEX)
    563564        {
    564             uint64_t val64;
    565 
    566565            if (pParam->flags & USE_REG_GEN32)
    567566            {
     
    571570                if (VBOX_FAILURE(DISFetchReg32(pCtx, pParam->index.reg_gen, &val32))) return VERR_INVALID_PARAMETER;
    572571
    573                 val64 = val32;
     572                if (pParam->flags & USE_SCALE)
     573                    val32 *= pParam->scale;
     574
     575                pParamVal->val.val32 += val32;
    574576            }
    575577            else
    576578            if (pParam->flags & USE_REG_GEN64)
    577579            {
     580                uint64_t val64;
     581
    578582                pParamVal->flags |= PARAM_VAL64;
    579583                if (VBOX_FAILURE(DISFetchReg64(pCtx, pParam->index.reg_gen, &val64))) return VERR_INVALID_PARAMETER;
    580             }
    581 
    582             if (pParam->flags & USE_SCALE)
    583                 val64 *= pParam->scale;
    584 
    585             pParamVal->val.val64 += val64;
     584
     585                if (pParam->flags & USE_SCALE)
     586                    val64 *= pParam->scale;
     587
     588                pParamVal->val.val64 += val64;
     589            }
    586590        }
    587591
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette