VirtualBox

儲存庫 vbox 的更動 52388


忽略:
時間撮記:
2014-8-15 上午09:45:12 (10 年 以前)
作者:
vboxsync
訊息:

Device/Driver: 5986: Applying patch from qemu-devel related to "Hours in 12-hour mode are in the 1-12 range, not 0-11"

檔案:
修改 1 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/Devices/PC/DevRTC.cpp

    r48947 r52388  
    275275    tm->tm_min  = from_bcd(pThis, pThis->cmos_data[RTC_MINUTES]);
    276276    tm->tm_hour = from_bcd(pThis, pThis->cmos_data[RTC_HOURS] & 0x7f);
    277     if (   !(pThis->cmos_data[RTC_REG_B] & 0x02)
    278         && (pThis->cmos_data[RTC_HOURS] & 0x80))
    279         tm->tm_hour += 12;
     277    if (!(pThis->cmos_data[RTC_REG_B] & 0x02))
     278    {
     279        tm->tm_hour %= 12;
     280        if (pThis->cmos_data[RTC_HOURS] & 0x80)
     281            tm->tm_hour += 12;
     282    }
    280283    tm->tm_wday = from_bcd(pThis, pThis->cmos_data[RTC_DAY_OF_WEEK]);
    281284    tm->tm_mday = from_bcd(pThis, pThis->cmos_data[RTC_DAY_OF_MONTH]);
     
    659662    {
    660663        /* 12 hour format */
    661         pThis->cmos_data[RTC_HOURS] = to_bcd(pThis, tm->tm_hour % 12);
     664        int h = (tm->tm_hour % 12) ? tm->tm_hour % 12 : 12;
     665        pThis->cmos_data[RTC_HOURS] = to_bcd(pThis, h);
    662666        if (tm->tm_hour >= 12)
    663667            pThis->cmos_data[RTC_HOURS] |= 0x80;
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

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