handling temporary structure
diff --git a/skeletons/NativeReal.c b/skeletons/NativeReal.c
index 594bdb5..810d510 100644
--- a/skeletons/NativeReal.c
+++ b/skeletons/NativeReal.c
@@ -127,6 +127,9 @@
asn_enc_rval_t erval;
REAL_t tmp;
+ /* Prepare a temporary clean structure */
+ memset(&tmp, 0, sizeof(tmp));
+
if(asn_double2REAL(&tmp, Dbl)) {
erval.encoded = -1;
erval.failed_type = td;
@@ -140,6 +143,10 @@
assert(erval.structure_ptr == &tmp);
erval.structure_ptr = ptr;
}
+
+ /* Free possibly allocated members of the temporary structure */
+ asn_DEF_REAL.free_struct(&asn_DEF_REAL, &tmp, 1);
+
return erval;
}