Re: ext3 и w2k
Peter Teslenko -> debian-russian@lists.debian.org @ Fri, 08 Dec 2006 11:08:12 +0300:
>> Вроде нормально. У знакомого он один раз при копировании очень большого
>> объема споткнулся, но ничего не попортил. Больше проблем не
>> было. Графический фронтенд там еще только разрабатывается. Из консоли все
>> нормально работает.
PT> Мне вот непонравился этот кусок.
PT> файл create.c
PT> функция
PT> NTSTATUS
PT> Ext2CreateInode(
PT> PEXT2_IRP_CONTEXT IrpContext,
PT> PEXT2_VCB Vcb,
PT> PEXT2_FCB ParentFcb,
PT> ULONG Type,
PT> ULONG FileAttr,
PT> PUNICODE_STRING FileName)
PT> Ext2Ino.i_mode = ( S_IPERMISSION_MASK &
PT> ParentFcb->Inode->i_mode );
PT> Все файлы получаются минимум с 755. Уж можно было ставить разные пермишены на файлы и каталоги.
PT> Плюс вот такие шедевры удивляют
PT> if (!NT_SUCCESS(Status)) {
PT> goto errorout;
PT> }
PT> [...]
PT> errorout:
PT> return Status;
PT> Что мешало сразу return Status поставить?
Необходимость потом переписывать нафиг весь код, если добавится
какой-нибудь объект, который при любом выходе из функции надо чистить.
Поскольку при переписывании что-нибудь да забудешь, лучше писать
подобный код сразу.
ЗЫ. Да, знаю. Не пишите, дети, на C. Не 1970 год, чай, на дворе...
Нет, и на C++ тоже не надо, хотя у него с этим и попроще...
--
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
Психология - это наука о плохих контактах (С)энта
Reply to: