mraa: add deinit function for valgrind testing
authorBrendan Le Foll <brendan.le.foll@intel.com>
Tue, 1 Jul 2014 15:38:41 +0000 (16:38 +0100)
committerBrendan Le Foll <brendan.le.foll@intel.com>
Tue, 1 Jul 2014 15:38:41 +0000 (16:38 +0100)
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
api/mraa/common.h
examples/hellomraa.c
src/mraa.c

index 9f32c13..1e296d8 100644 (file)
@@ -187,6 +187,14 @@ mraa_result_t mraa_init();
 #endif
 
 /**
+ * De-Initilise MRAA
+ *
+ * This is not a strict requirement but useful to test memory leaks and for
+ * people who like super clean code.
+ */
+void mraa_deinit();
+
+/**
  * Checks if a pin is able to use the passed in mode.
  *
  * @param pin Physical Pin to be checked.
index d6748d2..70fff49 100644 (file)
@@ -30,6 +30,7 @@ int
 main(int argc, char **argv)
 {
     fprintf(stdout, "hello mraa\n Version: %s\n", mraa_get_version());
+    mraa_deinit();
     return 0;
 }
 //! [Interesting]
index 09f3c65..2da9c47 100644 (file)
@@ -98,6 +98,13 @@ mraa_init()
     return MRAA_SUCCESS;
 }
 
+void
+mraa_deinit()
+{
+    free(plat->pins);
+    free(plat);
+}
+
 int
 mraa_set_priority(const unsigned int priority)
 {