Здравствуйте, MTD, Вы писали:
MTD>Здравствуйте, sourcerer, Вы писали:
S>>3аберите меня отсюда, пожалста!
MTD>К чему это нытье? Уволься, рабство вроде как давно отменили.
поручили одному чуваку рефракторить мой код. чувак посмотрел на это дело и подал на увольнение. серьезно. сказал, что его инфаркт хватить может. сердце не выдержит. он же ведь старенький. за пятьдесят. многое видел в своей жизни. но...
ну там сначала все с мелочей начиналось. выходы за границы буфера. на си. причем в оба конца. как по отрицательному смещению так и за конец. компилятор ругается матом. компилятор же не знает, что у меня свой собственный аллокатор. реал-таймовый. на реал-таймовой оси под mips. выход за границы буфера это такой протокол общения кода с аллокатором. код говорит когда аллокатор может взять тайм-аут на майнтенс и перестройку структур данных.
убрали выходы за границы буфера -- перестала освобождаться память. сюрприз, да. но это чувак еще стерпел. тем более что это как бы логично, чтобы с аллокатором был протокол. пускай и не доументированный и реализованный не через api функции (их же тогда документировать нужно будет), а через выход за границы.
дальше -- идет обращение к неиницилизированным данным в куче. на самом деле иницилизированным. это аллокатор возвращает указатели на api функции в начале каждого выделенного блока. это нужно затем чтобы код программы мог их динамически перекрывать своими собственными. и это реально нужно коду. без этого программа разваливается. но.. компилятору такое не нравится.
короче, чувак обдумал ситуацию и решил не рисковать здоровьем.
americans fought a war for a freedom. another one to end slavery. so, what do some of them choose to do with their freedom? become slaves.