From 6d13e890a9d8b5d5c30a661d331b9f334cfcb329 Mon Sep 17 00:00:00 2001 From: "Arnaud G. GIBERT" Date: Tue, 28 May 2024 13:59:18 +0200 Subject: [PATCH] - Fix init handler call: call it after default handlers setup. --- lib/libnode.c | 15 +++++++-------- lib/libnode.h | 4 ++-- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/lib/libnode.c b/lib/libnode.c index 6699eca..bc36646 100644 --- a/lib/libnode.c +++ b/lib/libnode.c @@ -1004,14 +1004,6 @@ NDT_Status ND_DataStruct_Open_I( NDT_Root **Root_Ptr_Ptr, NDT_DataStruct_Name } - /* Call init function */ - - if( ( status = ND_Handler_Init_Exec_I( &root_extra_size, handler_target_tab, handler_target_tab[ NDD_HANDLER_ID_INIT].Name, ( NDT_Handler_Init *)handler_target_tab[ NDD_HANDLER_ID_INIT].Ptr, User_Ptr)) != NDS_OK) - { - return( status); - } - - /* Complete with default handlers */ for( handler_id = 0; handler_id < NDD_HANDLER_ID_NB; handler_id++) @@ -1022,6 +1014,13 @@ NDT_Status ND_DataStruct_Open_I( NDT_Root **Root_Ptr_Ptr, NDT_DataStruct_Name } } + + /* Call init function */ + + if( ( status = ND_Handler_Init_Exec_I( &root_extra_size, handler_target_tab, handler_target_tab[ NDD_HANDLER_ID_INIT].Name, ( NDT_Handler_Init *)handler_target_tab[ NDD_HANDLER_ID_INIT].Ptr, User_Ptr)) != NDS_OK) + { + return( status); + } if( ( status = ND_Node_Root_Alloc( Root_Ptr_Ptr, Name, Index_Nb, Type_Ptr, handler_target_tab, root_extra_size, Own_Value, User_Ptr)) != NDS_OK) diff --git a/lib/libnode.h b/lib/libnode.h index 9f24c15..3373433 100644 --- a/lib/libnode.h +++ b/lib/libnode.h @@ -503,8 +503,8 @@ NDT_Handler NDG_Handler_Tab_Default[ NDD_HANDLER_NB] = ( NDT_Handler_Function *)ND_Handler_Open_Default}, /* Default Open function pointer */ { "NDT_Handler_Close_Default", /* Default Close function name */ ( NDT_Handler_Function *)ND_Handler_Close_Default}, /* Default Close function pointer */ - { "NDT_Handler_Info_Default", /* Default Lock function name */ - ( NDT_Handler_Function *)ND_Handler_Info_Default}, /* Default Lock function pointer */ + { "NDT_Handler_Info_Default", /* Default Info function name */ + ( NDT_Handler_Function *)ND_Handler_Info_Default}, /* Default Info function pointer */ { "NDT_Handler_Lock_Default", /* Default Lock function name */ ( NDT_Handler_Function *)ND_Handler_Lock_Default}, /* Default Lock function pointer */ { "NDT_Handler_Unlock_Default", /* Default Unlock function name */