From 2d2a8ce82bc9181a07b2647faae3a415fa741d0d Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Wed, 12 Mar 2008 21:36:42 +0000 Subject: added free function to free the io_service svn path=/trunk/externals/apple/; revision=9578 --- ambient_light_sensor.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'ambient_light_sensor.c') diff --git a/ambient_light_sensor.c b/ambient_light_sensor.c index 9e3f93c..139f359 100644 --- a/ambient_light_sensor.c +++ b/ambient_light_sensor.c @@ -104,6 +104,12 @@ static void ambient_light_sensor_info(t_ambient_light_sensor* x) } +static void ambient_light_sensor_free(t_ambient_light_sensor* x) +{ + IOServiceClose(x->io_connect); +} + + static void *ambient_light_sensor_new(void) { DEBUG(post("ambient_light_sensor_new");); @@ -131,7 +137,6 @@ static void *ambient_light_sensor_new(void) pd_error(x,"[ambient_light_sensor]: no sensor found"); } kernResult = IOServiceOpen(x->io_service, mach_task_self(), 0, &x->io_connect); - IOObjectRelease(x->io_service); if (kernResult != KERN_SUCCESS) { @@ -148,7 +153,7 @@ void ambient_light_sensor_setup(void) { ambient_light_sensor_class = class_new(gensym("ambient_light_sensor"), (t_newmethod)ambient_light_sensor_new, - NULL, + (t_method)ambient_light_sensor_free, sizeof(t_ambient_light_sensor), CLASS_DEFAULT, 0); -- cgit v1.2.1