> Если кто на бронепоезде, assert дебажная фича, ловящая programming error - оно выносит
> процесс с аварийным завершением.И?
> Это не является штатным состоянием дел
null вместо указателя, безусловно, им не является, но в хорошем коде как-то, обычно, принято эти null проверять - и если ничего разумного в этом случае сделать нельзя - таки падать с аварийным завершением.
> Там фикс кроме всего прочего меняет еще и работу c этим, tr_new() добавили.
ну да, ну да - то есть там теперь не указатель в уже освобожденную память, а null будет. А вот везде ли при этом НЕ вызывается второй раз destruct - судя по наличию таки assert, писатель кода немного усомнился, но не настолько, чтобы проверять каждый раз.
> В дебажном варианте там нормальный ассерт.
только ты его так не соберешь - оно вручную по-моему, вообще не включается, этот NDEBUG там намертво прибит - чтобы его выключить, надо собрать нерелизную версию из гита.
> Чего юзер с явным programming error должен сделать?
бегать и орать "ваше г-но ПАДАЕТ при подсовывании ему вот такого торрента!" - что явно лучше, чем если оно не падает, а тихо глючит когда-нибудь сильно потом, или падает без диагностики и неясно где. А при большой удаче - еще что-нибудь там майнит.
> Без понятия, в git log работает.
мне неинтересно делать clone того, чем я не собираюсь пользоваться, только ради удовольствия посмотреть лог - а с remote repo напрямую ваша brain damaged поделка работать не умеет. Особенно когда я уже в интуитивно-приятном интерфейсе нашел нужный патч, и требуется только скопировать его - хотя бы мышью из браузера - но даже это теперь невозможно. При этом его стало можно (если есть права, конечно) прямо в этом приятном интерфейсе поредактировать, прямо с любимого ипхона.
А вытащить собственно патч, без интерфейса - теперь, похоже, нельзя. Кнопка raw осталась только для файлов.
Пользователям пихонов, наверное, и не нужно.