diff --git a/src/MyFirstUDRKit.cpp b/src/MyFirstUDRKit.cpp index be23ae5..72a8686 100644 --- a/src/MyFirstUDRKit.cpp +++ b/src/MyFirstUDRKit.cpp @@ -30,7 +30,7 @@ #include #include -#include +#include #include #include @@ -85,11 +85,29 @@ FB_UDR_BEGIN_FUNCTION(MFK_flagged) FB_UDR_EXECUTE_FUNCTION { - if ( flags == NULL ) { - return 0; - } - ISC_UINT64 i = ( 1ULL << *flag ); - return ( *flags & i ) ? 1 : 0; +// Original code +// if ( flags == NULL ) { +// return 0; +// } + if ( in->flagsNull ) { + out->resultNull = FB_TRUE; + out->result = 0; + } + else + { + out->resultNull = FB_FALSE; +// Original code +// ISC_UINT64 i = ( 1ULL << *flag ); +// return ( *flags & i ) ? 1 : 0; + ISC_UINT64 i = ( 1ULL << in->flag ); + out->result = ( in->flags & i ) ? 1 : 0; + } } FB_UDR_END_FUNCTION + + + + + +