Пишу, по большей части, про историю, свою жизнь и немного про программирование.

Libmapi: поправили один баг

В пятницу выслал на корявом английском багрепорт ребятам, которые пишут libmapi: по коду было видно (и подтвердилось полевыми испытаниями), что на стыке годов события следующего года будут отображаться через openchangeclient криво. Поправили, правда, странно и сложно:

_PUBLIC_ uint32_t mapidump_freebusy_year(uint32_t month, uint32_t year)
{
        uint32_t        realmonth;

        realmonth = month - (year * 16);
        while (realmonth > 0xc) {
                year++;
                realmonth = month - (year * 16);
        }

        return year;
}

Если не забуду, надо будет выслать им две моих строчки кода, где я нахожу месяц и год битовыми операциями и сдвигом.

А ещё поправили один из багов, который мешал библиотеке нормально собираться при некоторых условиях. Молодцы. Надо чаще им писать.