g_assert() replaced with NEARDAL_ASSERT().
authorFrederic PAUT <frederic.paut@linux.intel.com>
Wed, 5 Dec 2012 15:54:07 +0000 (16:54 +0100)
committerFrederic PAUT <frederic.paut@linux.intel.com>
Wed, 5 Dec 2012 15:54:07 +0000 (16:54 +0100)
less restrictive and avoid application aborting

configure.ac
lib/interface/org.neard.Tag.xml
lib/neardal.c
lib/neardal_adapter.c
lib/neardal_device.c
lib/neardal_errors.h
lib/neardal_manager.c
lib/neardal_record.c
lib/neardal_tag.c
lib/neardal_tools.c
lib/neardal_tools.h

index 0580241..8f7feb8 100644 (file)
@@ -27,7 +27,7 @@ AC_ARG_ENABLE(debug, AC_HELP_STRING([--disable-debug],
 ])
 
 if (test "${debug}" = "yes"); then
-       CFLAGS="$CFLAGS -g -O0"
+       CFLAGS="$CFLAGS -g -O0 -DNEARDAL_DEBUG"
        echo 'NEARDAL will be compiled in debug mode. CFLAGS='${CFLAGS}
 else
        CFLAGS="$CFLAGS -O2"
index a365ab0..4e8aa57 100644 (file)
@@ -3,18 +3,21 @@
 <node>
        <interface name="org.neard.Tag">
                <method name="GetProperties">
-                       <arg type="a{sv}" direction="out"/>
+                       <arg name="properties" type="a{sv}" direction="out"/>
                </method>
                <method name="SetProperty">
-                       <arg type="s" direction="in"/>
-                       <arg type="v" direction="in"/>
+                       <arg name="name" type="s" direction="in"/>
+                       <arg name="value" type="v" direction="in"/>
                </method>
                <method name="Write">
-                       <arg type="a{sv}" direction="in"/>
+                       <arg name="attributes" type="a{sv}" direction="in"/>
+               </method>
+               <method name="GetRawNDEF">
+                       <arg name="NDEF" type="ay" direction="out"/>
                </method>
                <signal name="PropertyChanged">
-                       <arg type="s"/>
-                       <arg type="v"/>
+                       <arg name="name" type="s"/>
+                       <arg name="value" type="v"/>
                </signal>
        </interface>
        <node name="record0"/>
index 1340417..29e85e5 100644 (file)
@@ -318,6 +318,9 @@ char *neardal_error_get_text(errorCode_t ec)
        case NEARDAL_ERROR_NO_RECORD:
                return "No tag record found...";
 
+       case NEARDAL_ERROR_INVALID_RECORD:
+               return "Tag record has an invalid format...";
+
        case NEARDAL_ERROR_POLLING_ALREADY_ACTIVE:
                return "Polling already active";
 
index 59c91cc..9ea4dc2 100644 (file)
@@ -44,8 +44,8 @@ static void  neardal_adp_prv_cb_tag_found(orgNeardTag *proxy,
        NEARDAL_TRACEIN();
        (void) proxy; /* remove warning */
 
-       g_assert(arg_unnamed_arg0 != NULL);
-       g_assert(adpProp != NULL);
+       NEARDAL_ASSERT(arg_unnamed_arg0 != NULL);
+       NEARDAL_ASSERT(adpProp != NULL);
 
        NEARDAL_TRACEF("Adding tag '%s'\n", arg_unnamed_arg0);
        /* Invoking Callback 'Tag Found' before adding it (otherwise
@@ -72,8 +72,8 @@ static void neardal_adp_prv_cb_tag_lost(orgNeardTag *proxy,
        errorCode_t     err;
 
        NEARDAL_TRACEIN();
-       g_assert(arg_unnamed_arg0 != NULL);
        (void) proxy; /* remove warning */
+       NEARDAL_ASSERT(arg_unnamed_arg0 != NULL);
 
        neardal_mgr_prv_get_adapter((char *) arg_unnamed_arg0, &adpProp);
 
@@ -107,8 +107,8 @@ static void  neardal_adp_prv_cb_dev_found(orgNeardDev *proxy,
        NEARDAL_TRACEIN();
        (void) proxy; /* remove warning */
 
-       g_assert(arg_unnamed_arg0 != NULL);
-       g_assert(adpProp != NULL);
+       NEARDAL_ASSERT(arg_unnamed_arg0 != NULL);
+       NEARDAL_ASSERT(adpProp != NULL);
 
        NEARDAL_TRACEF("Adding device '%s'\n", arg_unnamed_arg0);
        /* Invoking Callback 'Dev Found' before adding it (otherwise
@@ -135,8 +135,8 @@ static void neardal_adp_prv_cb_dev_lost(orgNeardDev *proxy,
        errorCode_t     err;
 
        NEARDAL_TRACEIN();
-       g_assert(arg_unnamed_arg0 != NULL);
        (void) proxy; /* remove warning */
+       NEARDAL_ASSERT(arg_unnamed_arg0 != NULL);
 
        neardal_mgr_prv_get_adapter((char *) arg_unnamed_arg0, &adpProp);
 
@@ -176,7 +176,7 @@ static void neardal_adp_prv_cb_property_changed(orgNeardAdp *proxy,
        (void) proxy; /* remove warning */
        (void) user_data; /* remove warning */
        NEARDAL_TRACEIN();
-       g_assert(arg_unnamed_arg0 != NULL);
+       NEARDAL_ASSERT(arg_unnamed_arg0 != NULL);
 
        neardal_mgr_prv_get_adapter_from_proxy(proxy, &adpProp);
        if (adpProp == NULL) {
@@ -315,8 +315,9 @@ static errorCode_t neardal_adp_prv_read_properties(AdpProp *adpProp)
        gsize           len     = 0;
 
        NEARDAL_TRACEIN();
-       g_assert(adpProp != NULL);
-       g_assert(adpProp->proxy != NULL);
+       NEARDAL_ASSERT_RET(adpProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
+       NEARDAL_ASSERT_RET(adpProp->proxy != NULL
+                         , NEARDAL_ERROR_INVALID_PARAMETER);
 
        org_neard_adp__call_get_properties_sync(adpProp->proxy, &tmp,
                                                NULL, &gerror);
@@ -409,8 +410,8 @@ errorCode_t neardal_adp_prv_get_tag(AdpProp *adpProp, gchar *tagName,
        guint           len = 0;
        TagProp         *tag;
 
-       g_assert(adpProp != NULL);
-       g_assert(tagProp != NULL);
+       NEARDAL_ASSERT_RET(adpProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
+       NEARDAL_ASSERT_RET(tagProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        while (len < g_list_length(adpProp->tagList)) {
                tag = g_list_nth_data(adpProp->tagList, len);
@@ -437,8 +438,8 @@ errorCode_t neardal_adp_prv_get_dev(AdpProp *adpProp, gchar *devName,
        guint           len = 0;
        DevProp         *dev;
 
-       g_assert(adpProp != NULL);
-       g_assert(devProp != NULL);
+       NEARDAL_ASSERT_RET(adpProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
+       NEARDAL_ASSERT_RET(devProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        while (len < g_list_length(adpProp->devList)) {
                dev = g_list_nth_data(adpProp->devList, len);
@@ -465,7 +466,7 @@ static errorCode_t neardal_adp_prv_init(AdpProp *adpProp)
        errorCode_t     err = NEARDAL_SUCCESS;
 
        NEARDAL_TRACEIN();
-       g_assert(adpProp != NULL);
+       NEARDAL_ASSERT_RET(adpProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        if (adpProp->proxy != NULL) {
                g_signal_handlers_disconnect_by_func(adpProp->proxy,
@@ -610,7 +611,7 @@ errorCode_t neardal_adp_remove(AdpProp *adpProp)
        GList           *node = NULL;
        GList           **adpList;
 
-       g_assert(adpProp != NULL);
+       NEARDAL_ASSERT_RET(adpProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        NEARDAL_TRACEF("Removing adapter:%s\n", adpProp->name);
 
index 777620c..54f2ae5 100644 (file)
@@ -76,8 +76,9 @@ static errorCode_t neardal_dev_prv_read_properties(DevProp *devProp)
        gchar           **rcdArray      = NULL;
 
        NEARDAL_TRACEIN();
-       g_assert(devProp != NULL);
-       g_assert(devProp->proxy != NULL);
+       NEARDAL_ASSERT_RET(devProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
+       NEARDAL_ASSERT_RET(devProp->proxy != NULL
+                         , NEARDAL_ERROR_GENERAL_ERROR);
 
        org_neard_dev__call_get_properties_sync(devProp->proxy, &tmp, NULL,
                                                &gerror);
@@ -123,7 +124,7 @@ static errorCode_t neardal_dev_prv_init(DevProp *devProp)
        errorCode_t     err = NEARDAL_SUCCESS;
 
        NEARDAL_TRACEIN();
-       g_assert(devProp != NULL);
+       NEARDAL_ASSERT_RET(devProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        if (devProp->proxy != NULL) {
                g_signal_handlers_disconnect_by_func(devProp->proxy,
@@ -189,7 +190,7 @@ void neardal_dev_notify_dev_found(DevProp *devProp)
        RcdProp *rcdProp;
        gsize   len;
 
-       g_assert(devProp != NULL);
+       NEARDAL_ASSERT(devProp != NULL);
 
        if (devProp->notified == FALSE && neardalMgr.cb.dev_found != NULL) {
                (neardalMgr.cb.dev_found)(devProp->name,
@@ -220,7 +221,7 @@ errorCode_t neardal_dev_prv_push(DevProp *devProp, RcdProp *rcd)
        errorCode_t     err;
        GError          *gerror = NULL;
 
-       g_assert(devProp != NULL);
+       NEARDAL_ASSERT_RET(devProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        builder = g_variant_builder_new(G_VARIANT_TYPE_ARRAY);
        if (builder == NULL)
@@ -258,7 +259,8 @@ errorCode_t neardal_dev_prv_add(gchar *devName, void *parent)
        DevProp         *devProp        = NULL;
        AdpProp         *adpProp        = parent;
 
-       g_assert(devName != NULL);
+       NEARDAL_ASSERT_RET( ((adpProp != NULL) && (devName != NULL))
+                         , NEARDAL_ERROR_INVALID_PARAMETER);
 
        NEARDAL_TRACEF("Adding dev:%s\n", devName);
        devProp = g_try_malloc0(sizeof(DevProp));
@@ -295,7 +297,7 @@ void neardal_dev_prv_remove(DevProp *devProp)
        GList           *node;
        AdpProp         *adpProp;
 
-       g_assert(devProp != NULL);
+       NEARDAL_ASSERT(devProp != NULL);
 
        NEARDAL_TRACEF("Removing dev:%s\n", devProp->name);
        /* Remove all devs */
index d03ef19..749b183 100644 (file)
@@ -42,14 +42,14 @@ extern "C" {
 typedef                int     errorCode_t;
 
 /*! @brief Success! (It's not an error) */
-#define NEARDAL_SUCCESS                                ((errorCode_t) 1)
+#define NEARDAL_SUCCESS                                        ((errorCode_t) 1)
 
 /*! @brief General error */
 #define NEARDAL_ERROR_GENERAL_ERROR                    ((errorCode_t) -1)
 /*! @brief Invalid parameter */
 #define NEARDAL_ERROR_INVALID_PARAMETER                ((errorCode_t) -2)
 /*! @brief Memory allocation error */
-#define NEARDAL_ERROR_NO_MEMORY                        ((errorCode_t) -3)
+#define NEARDAL_ERROR_NO_MEMORY                                ((errorCode_t) -3)
 /*! @brief DBUS general error */
 #define NEARDAL_ERROR_DBUS                             ((errorCode_t) -4)
 /*! @brief DBUS error (Can not create a proxy to dbus interface) */
@@ -62,9 +62,9 @@ typedef               int     errorCode_t;
 /*! @brief Neard service, polling already active */
 #define NEARDAL_ERROR_POLLING_ALREADY_ACTIVE           ((errorCode_t) -8)
 /*! @brief Neard service, no NEARDAL tag present */
-#define NEARDAL_ERROR_NO_TAG                   ((errorCode_t) -9)
+#define NEARDAL_ERROR_NO_TAG                           ((errorCode_t) -9)
 /*! @brief Neard service, no NEARDAL record present */
-#define NEARDAL_ERROR_NO_RECORD                        ((errorCode_t) -10)
+#define NEARDAL_ERROR_NO_RECORD                                ((errorCode_t) -10)
 /*! @brief Invalid record format */
 #define NEARDAL_ERROR_INVALID_RECORD                   ((errorCode_t) -11)
 /*! @brief Neard service, no NEARDAL device present */
index 4862f59..5117b92 100644 (file)
@@ -40,10 +40,10 @@ static void neardal_mgr_prv_cb_property_changed(orgNeardMgr *proxy,
 {
        NEARDAL_TRACEIN();
 
-       g_assert(arg_unnamed_arg0 != NULL);
        (void) proxy; /* remove warning */
        (void) arg_unnamed_arg1; /* remove warning */
        (void) user_data; /* remove warning */
+       NEARDAL_ASSERT(arg_unnamed_arg0 != NULL);
 
        NEARDAL_TRACEF("arg_unnamed_arg0='%s'\n", arg_unnamed_arg0);
        /* Adapters List ignored... */
@@ -60,10 +60,11 @@ static void neardal_mgr_prv_cb_adapter_added(orgNeardMgr *proxy,
        errorCode_t     err = NEARDAL_SUCCESS;
 
        NEARDAL_TRACEIN();
-       g_assert(arg_unnamed_arg0 != NULL);
        (void) proxy; /* remove warning */
        (void) user_data; /* remove warning */
 
+       NEARDAL_ASSERT(arg_unnamed_arg0 != NULL);
+       
        err = neardal_adp_add((char *) arg_unnamed_arg0);
        if (err != NEARDAL_SUCCESS)
                return;
@@ -83,10 +84,11 @@ static void neardal_mgr_prv_cb_adapter_removed(orgNeardMgr *proxy,
        GList   *node   = NULL;
 
        NEARDAL_TRACEIN();
-       g_assert(arg_unnamed_arg0 != NULL);
        (void) proxy; /* remove warning */
        (void) user_data; /* remove warning */
 
+       NEARDAL_ASSERT(arg_unnamed_arg0 != NULL);
+
        node = g_list_first(neardalMgr.prop.adpList);
        if (node == NULL) {
                NEARDAL_TRACE_ERR("NFC adapter not found! (%s)\n",
@@ -111,11 +113,11 @@ static void neardal_mgr_prv_cb_adapter_removed(orgNeardMgr *proxy,
 static errorCode_t neardal_mgr_prv_get_all_adapters(gchar ***adpArray,
                                                    gsize *len)
 {
-       errorCode_t     err                     = NEARDAL_ERROR_NO_ADAPTER;
+       errorCode_t     err             = NEARDAL_ERROR_NO_ADAPTER;
        GVariant        *tmp            = NULL;
        GVariant        *tmpOut         = NULL;
 
-       g_assert(adpArray != NULL);
+       NEARDAL_ASSERT_RET(adpArray != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        /* Invoking method 'GetProperties' on Neard Manager */
        if (org_neard_mgr__call_get_properties_sync(neardalMgr.proxy, &tmp,
@@ -181,7 +183,7 @@ errorCode_t neardal_mgr_prv_get_adapter_from_proxy(orgNeardAdp *adpProxy,
        AdpProp         *adapter;
        GList           *tmpList;
 
-       g_assert(adpProp != NULL);
+       NEARDAL_ASSERT_RET(adpProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        tmpList = neardalMgr.prop.adpList;
        while (len < g_list_length(tmpList)) {
index ad875bb..d7b3b23 100644 (file)
@@ -40,8 +40,9 @@ static errorCode_t neardal_rcd_prv_read_properties(RcdProp *rcd)
        GVariant        *tmpOut         = NULL;
 
        NEARDAL_TRACEIN();
-       g_assert(rcd != NULL);
-       g_assert(rcd->proxy != NULL);
+       NEARDAL_ASSERT_RET(rcd != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
+       NEARDAL_ASSERT_RET(rcd->proxy != NULL
+                          , NEARDAL_ERROR_INVALID_PARAMETER);
 
        org_neard_rcd__call_get_properties_sync(rcd->proxy, &tmp, NULL,
                                                &gerror);
@@ -99,7 +100,7 @@ error:
 static errorCode_t neardal_rcd_prv_init(RcdProp *rcd)
 {
        NEARDAL_TRACEIN();
-       g_assert(rcd != NULL);
+       NEARDAL_ASSERT_RET(rcd != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        if (rcd->proxy != NULL)
                g_object_unref(rcd->proxy);
@@ -152,7 +153,7 @@ errorCode_t neardal_rcd_prv_format(GVariantBuilder *builder, RcdProp *rcd)
 
 
        NEARDAL_TRACEIN();
-       g_assert(rcd != NULL);
+       NEARDAL_ASSERT_RET(rcd != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        /* Type */
        if (rcd->type != NULL)
@@ -210,8 +211,8 @@ errorCode_t neardal_rcd_add(char *rcdName, void *parent)
        RcdProp         *rcd    = NULL;
        TagProp         *tagProp = parent;
 
-       g_assert(rcdName != NULL);
-       g_assert(parent != NULL);
+       NEARDAL_ASSERT_RET((rcdName != NULL) && (parent != NULL)
+                         , NEARDAL_ERROR_INVALID_PARAMETER);
 
        NEARDAL_TRACEF("Adding record:%s\n", rcdName);
        rcd = g_try_malloc0(sizeof(RcdProp));
@@ -253,7 +254,7 @@ void neardal_rcd_remove(RcdProp *rcd)
        TagProp         *tagProp;
 
        NEARDAL_TRACEIN();
-       g_assert(rcd != NULL);
+       NEARDAL_ASSERT(rcd != NULL);
 
        tagProp = rcd->parent;
        NEARDAL_TRACEF("Removing record:%s\n", rcd->name);
index f3fef1e..95f3273 100644 (file)
@@ -76,8 +76,9 @@ static errorCode_t neardal_tag_prv_read_properties(TagProp *tagProp)
        gchar           **rcdArray      = NULL;
 
        NEARDAL_TRACEIN();
-       g_assert(tagProp != NULL);
-       g_assert(tagProp->proxy != NULL);
+       NEARDAL_ASSERT_RET(tagProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
+       NEARDAL_ASSERT_RET(tagProp->proxy != NULL
+                         , NEARDAL_ERROR_GENERAL_ERROR);
 
        org_neard_tag__call_get_properties_sync(tagProp->proxy, &tmp, NULL,
                                                &gerror);
@@ -142,7 +143,7 @@ static errorCode_t neardal_tag_prv_init(TagProp *tagProp)
        errorCode_t     err = NEARDAL_SUCCESS;
 
        NEARDAL_TRACEIN();
-       g_assert(tagProp != NULL);
+       NEARDAL_ASSERT_RET(tagProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        if (tagProp->proxy != NULL) {
                g_signal_handlers_disconnect_by_func(tagProp->proxy,
@@ -191,10 +192,10 @@ errorCode_t neardal_tag_prv_get_record(TagProp *tagProp, gchar *rcdName,
        guint           len;
        RcdProp *rcd    = NULL;
 
-       g_assert(tagProp != NULL);
-       g_assert(rcdName != NULL);
-       g_assert(rcdProp != NULL);
-
+       NEARDAL_ASSERT_RET((tagProp != NULL) && (rcdName != NULL)
+                          && (rcdProp != NULL)
+                          , NEARDAL_ERROR_INVALID_PARAMETER);
+       
        len = 0;
        while (len < g_list_length(tagProp->rcdList)) {
                rcd = g_list_nth_data(tagProp->rcdList, len);
@@ -240,7 +241,7 @@ void neardal_tag_notify_tag_found(TagProp *tagProp)
        RcdProp *rcdProp;
        gsize   len;
 
-       g_assert(tagProp != NULL);
+       NEARDAL_ASSERT(tagProp != NULL);
 
        if (tagProp->notified == FALSE && neardalMgr.cb.tag_found != NULL) {
                (neardalMgr.cb.tag_found)(tagProp->name,
@@ -271,7 +272,7 @@ errorCode_t neardal_tag_prv_write(TagProp *tagProp, RcdProp *rcd)
        errorCode_t     err;
        GError          *gerror = NULL;
 
-       g_assert(tagProp != NULL);
+       NEARDAL_ASSERT_RET(tagProp != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        builder = g_variant_builder_new(G_VARIANT_TYPE_ARRAY);
        if (builder == NULL)
@@ -309,7 +310,8 @@ errorCode_t neardal_tag_prv_add(gchar *tagName, void *parent)
        TagProp         *tagProp        = NULL;
        AdpProp         *adpProp        = parent;
 
-       g_assert(tagName != NULL);
+       NEARDAL_ASSERT_RET((tagName != NULL) && (parent != NULL)
+                          , NEARDAL_ERROR_INVALID_PARAMETER);
 
        NEARDAL_TRACEF("Adding tag:%s\n", tagName);
        tagProp = g_try_malloc0(sizeof(TagProp));
@@ -346,7 +348,7 @@ void neardal_tag_prv_remove(TagProp *tagProp)
        GList           *node;
        AdpProp         *adpProp;
 
-       g_assert(tagProp != NULL);
+       NEARDAL_ASSERT(tagProp != NULL);
 
        NEARDAL_TRACEF("Removing tag:%s\n", tagProp->name);
        /* Remove all tags */
index 14abfb6..d477f01 100644 (file)
@@ -35,7 +35,7 @@
  ****************************************************************************/
 void neardal_tools_prv_free_gerror(GError **gerror)
 {
-       g_assert(gerror != NULL);
+       NEARDAL_ASSERT(gerror != NULL);
 
        if (*gerror != NULL)
                g_error_free(*gerror);
@@ -53,8 +53,8 @@ int neardal_tools_prv_cmp_path(const char *neardalPath, const char *reqPath)
        int             len, lenNfcPath, lenReqPath;
        int             ret = FALSE;
 
-       g_assert(neardalPath != NULL);
-       g_assert(reqPath != NULL);
+       NEARDAL_ASSERT_RET((neardalPath != NULL) && (reqPath != NULL)
+                         , FALSE);
 
        lenNfcPath = strlen(neardalPath);
        lenReqPath = strlen(reqPath);
@@ -94,7 +94,7 @@ errorCode_t neardal_tools_prv_add_dict_entry(GVariantBuilder *builder
 {
        GVariant *tmp = NULL;
 
-       g_assert(builder != NULL);
+       NEARDAL_ASSERT_RET(builder != NULL, NEARDAL_ERROR_INVALID_PARAMETER);
 
        switch (gVariantType) {
        case G_TYPE_STRING:
index 3037b04..9f119ed 100644 (file)
@@ -27,6 +27,25 @@ extern "C" {
 
 
 /*****************************************************************************
+ * Debugging macro to manage assertion.
+ *****************************************************************************/
+#define NEARDAL_ASSERT(cond) do { \
+       if (!(cond)) { \
+               neardal_trace(stderr, "\nASSERT!! %s -> %s():l%d: cond=(%s)\n\n" \
+                       , __FILE__, __func__, __LINE__, #cond); \
+               return; \
+       } \
+} while (0);
+
+#define NEARDAL_ASSERT_RET(cond, val) do { \
+       if (!(cond)) { \
+               neardal_trace(stderr, "\nASSERT!! %s -> %s():l%d: cond=(%s)\n\n" \
+                       , __FILE__, __func__, __LINE__, #cond); \
+               return val; \
+       } \
+} while (0);
+
+/*****************************************************************************
  * neardal_tools_prv_free_gerror: freeing gerror in neardal context
  *****************************************************************************/
 void neardal_tools_prv_free_gerror(GError **gerror);