UDF calling conventions

Запросы, планы, оптимизация запросов, ...

Модераторы: kdv, CyberMax

Ответить
D1
Сообщения: 1
Зарегистрирован: 30 авг 2006, 20:01

UDF calling conventions

Сообщение D1 » 30 авг 2006, 20:14

Прочитал Developer's Guide к Interbase. Узнал, что UDF нужно создавать с использованием stdcall. Затем узнал, что это ошибка, и нужно cdecl. Хорошо, буду использовать cdecl. Но меня волнует вот что: мои функции нормально работали и с stdcall. А ведь в этом случае стек очищает вызываемая функция, используя инструкцию типа ret 4. Почему сервер не падает?? Ведь в этом случае после возвращения UDF'ом управления указатель вершины стека (SP) должен быть неверен...

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 30 авг 2006, 22:56

просто совпадение. такое бывает. поверь мне, нужно использовать cdecl. Тем более что в нынешней документации по IB этот момент исправлен.

Ответить