From df5b0babc44c4be12058ef766716920a73cc0065 Mon Sep 17 00:00:00 2001 From: slzhou Date: Fri, 24 Feb 2023 12:20:55 +0800 Subject: [PATCH] fix: array[0] not supported in windows --- include/libs/function/taosudf.h | 1 - source/libs/function/src/udfd.c | 4 ++-- source/libs/function/test/udf2.c | 7 +++++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/include/libs/function/taosudf.h b/include/libs/function/taosudf.h index 5be9c15900..ee3d85b433 100644 --- a/include/libs/function/taosudf.h +++ b/include/libs/function/taosudf.h @@ -73,7 +73,6 @@ typedef struct SUdfDataBlock { SUdfColumn **udfCols; } SUdfDataBlock; -// TODO: deprecate SUdfInterBuf.numOfResult typedef struct SUdfInterBuf { int32_t bufLen; char *buf; diff --git a/source/libs/function/src/udfd.c b/source/libs/function/src/udfd.c index ec49c39c0e..4e16d5e708 100644 --- a/source/libs/function/src/udfd.c +++ b/source/libs/function/src/udfd.c @@ -308,8 +308,8 @@ void udfdInitializeCPlugin(SUdfScriptPlugin *plugin) { plugin->udfAggMergeFunc = udfdCPluginUdfAggMerge; plugin->udfAggFinishFunc = udfdCPluginUdfAggFinish; - SScriptUdfEnvItem items[0]; - plugin->openFunc(items, 0); + SScriptUdfEnvItem items[1] = {{"LD_LIBRARY_PATH", tsUdfdLdLibPath}}; + plugin->openFunc(items, 1); return; } diff --git a/source/libs/function/test/udf2.c b/source/libs/function/test/udf2.c index e24789d0fb..faf4daa4e5 100644 --- a/source/libs/function/test/udf2.c +++ b/source/libs/function/test/udf2.c @@ -12,12 +12,15 @@ DLL_EXPORT int32_t udf2_destroy() { return 0; } DLL_EXPORT int32_t udf2_start(SUdfInterBuf* buf) { *(int64_t*)(buf->buf) = 0; buf->bufLen = sizeof(double); - buf->numOfResult = 0; + buf->numOfResult = 1; return 0; } DLL_EXPORT int32_t udf2(SUdfDataBlock* block, SUdfInterBuf* interBuf, SUdfInterBuf* newInterBuf) { - double sumSquares = *(double*)interBuf->buf; + double sumSquares = 0; + if (interBuf->numOfResult == 1) { + sumSquares = *(double*)interBuf->buf; + } int8_t numNotNull = 0; for (int32_t i = 0; i < block->numOfCols; ++i) { SUdfColumn* col = block->udfCols[i]; -- GitLab