Re[2]: Сейчас на меня набросятся
От: Кирпа В.А. Украина  
Дата: 12.12.05 11:37
Оценка:
Здравствуйте, execve, Вы писали:

E>Здравствуйте, Кирпа В.А., Вы писали:


КВА>>Портировал я давеча один непутевый код с SUN на Linux


КВА>>И программа все время валилась c Segmentation fault

КВА>>притом самое интересное что было это внутри fclose()
КВА>>Спасибо людям что открыли мне прекрассный тулз valgrind
КВА>>Он и раскрыл мне глаза на то что в одном месте файл открытый на чтение
КВА>>закрывался дважды (заметьте не тот файл при закрытии которого был
КВА>>Segmentation fault)

E>
E>close(fd);
E>fd = -1;
E>

E>ну и анализировать возврат из close.

Покатим бочку на Linux дальше
Это же как надо тупо реализовать библиотечные функции ввода/вывода
чтобы повторное закрытие файла ломало heap
кстати повторное закрытие файла в SUN, Windows ничего вредного не делает


КВА>>А возмутило меня другое Анализ лога valgrind показал что библиотечные

КВА>>функции fprintf, fclose вовсю юзают malloc, free

E>А какие функции они должны юзать?


Раз они юзают malloc, free то пусть будут добры не попадать в условия когда
портится heap (например повторное закрытие файла)
!0xDEAD
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.