UDF и firebird-2.5.5

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

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

Ответить
AndreyTarasov
Сообщения: 7
Зарегистрирован: 12 окт 2009, 09:20

UDF и firebird-2.5.5

Сообщение AndreyTarasov » 12 янв 2016, 06:20

Имеется: CentOS 7, firebird-2.5.5.26952.0

Потребовалось написать функцию, упрощаю до минимума:

Код: Выделить всё

char* EXPORT fn_blob_string(BLOB b, int* nl)
{
        char *buffer = (char *)malloc(256);
    buffer[0] = '1';     buffer[1] = '2';    buffer[2] = '3';    buffer[3] = 0;
    return buffer;
}
DECLARE EXTERNAL FUNCTION BLOB_STRING
        BLOB, INTEGER
        RETURNS CSTRING(256) FREE_IT
        ENTRY_POINT 'fn_blob_string' MODULE_NAME 'udfblob';

Что бы особо не напрягаться, взял udflib.c, выдернул оттуда 2 функции и добавил в свою библиотеку: fn_blob_linecount(), fn_blob_substr()

при выполнении моей функции и функции из примера fn_blob_substr() - имеем:
unknown ISC error 335544919

а функция fn_blob_linecount() работает вполне нормально

Ответить