let's fix eeze sensors to not segv on shutdown.. dup registered fake
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>
Wed, 17 Apr 2013 15:26:24 +0000 (00:26 +0900)
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>
Wed, 17 Apr 2013 15:30:04 +0000 (00:30 +0900)
(udev registered it as fake)... and in the process i found that we
probably double free as sensor is calloced in the module and AGAIN in
eeze sensor core... oh and symbols probably might lak from modules..
so static them up yo.

src/lib/eeze/eeze_sensor.c
src/modules/eeze/sensor/fake/fake.c
src/modules/eeze/sensor/tizen/tizen.c
src/modules/eeze/sensor/udev/udev.c

index 3af4293..43da8be 100644 (file)
@@ -131,9 +131,6 @@ eeze_sensor_module_register(const char *name, Eeze_Sensor_Module *mod)
 
    if (!mod) return EINA_FALSE;
 
-   module = calloc(1, sizeof(Eeze_Sensor_Module));
-   if (!module) return EINA_FALSE;
-
    module = mod;
 
    if (!module->init) return EINA_FALSE;
@@ -155,6 +152,8 @@ eeze_sensor_module_unregister(const char *name)
    Eeze_Sensor_Module *module = NULL;
 
    module = eina_hash_find(g_handle->modules, name);
+   if (!module) return EINA_FALSE;
+   
    if (module->shutdown)
      module->shutdown();
 
index d8ff37b..ee07b98 100644 (file)
@@ -22,9 +22,9 @@ static int _eeze_sensor_fake_log_dom = -1;
 #endif
 #define ERR(...)  EINA_LOG_DOM_ERR(_eeze_sensor_fake_log_dom, __VA_ARGS__)
 
-Eeze_Sensor_Module *esensor_module;
+static Eeze_Sensor_Module *esensor_module;
 
-Eina_Bool
+static Eina_Bool
 fake_init(void)
 {
    /* For the fake module we prepare a list with all potential sensors. Even if
@@ -45,13 +45,13 @@ fake_init(void)
 /* We don't have anything to clear when we get unregistered from the core here.
  * This is different in other modules.
  */
-Eina_Bool
+static Eina_Bool
 fake_shutdown(void)
 {
    return EINA_TRUE;
 }
 
-Eina_Bool
+static Eina_Bool
 fake_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -101,7 +101,7 @@ fake_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj)
    return EINA_TRUE;
 }
 
-Eina_Bool
+static Eina_Bool
 fake_async_read(Eeze_Sensor_Type sensor_type, void *user_data EINA_UNUSED)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -177,7 +177,7 @@ fake_async_read(Eeze_Sensor_Type sensor_type, void *user_data EINA_UNUSED)
  * entry point to anything in this module. After setting ourself up we register
  * into the core of eeze sensor to make our functionality available.
  */
-Eina_Bool
+static Eina_Bool
 sensor_fake_init(void)
 {
 
@@ -214,7 +214,7 @@ sensor_fake_init(void)
 /* Cleanup when the module gets unloaded. Unregister ourself from the core to
  * avoid calls into a not loaded module.
  */
-void
+static void
 sensor_fake_shutdown(void)
 {
    Eeze_Sensor_Obj *sens;
@@ -223,10 +223,11 @@ sensor_fake_shutdown(void)
    EINA_LIST_FREE(esensor_module->sensor_list, sens)
       free(sens);
 
+   eina_log_domain_unregister(_eeze_sensor_fake_log_dom);
+
    free(esensor_module);
    esensor_module = NULL;
 
-   eina_log_domain_unregister(_eeze_sensor_fake_log_dom);
    _eeze_sensor_fake_log_dom = -1;
 }
 
index 0d4bbb1..b6f44aa 100644 (file)
@@ -20,9 +20,9 @@ static int _eeze_sensor_tizen_log_dom = -1;
 #endif
 #define ERR(...)  EINA_LOG_DOM_ERR(_eeze_sensor_tizen_log_dom, __VA_ARGS__)
 
-Eeze_Sensor_Module *esensor_module;
+static Eeze_Sensor_Module *esensor_module;
 /* Tizen sensor handle */
-sensor_h sensor_handle;
+static sensor_h sensor_handle;
 
 /* The Tizen sensor type ENUM has shown to not be stable regarding its
  * numbering scheme so we better translate between the Tizen types and the
@@ -168,7 +168,7 @@ tizen_to_eeze(sesnor_type_e type)
 /* We receive the timestamp in nanoseconds from the Tizen system lib. Convert
  * it to seconds as floating point value which is used in our public API.
   */
-double
+static double
 clock_convert(unsigned long long timestamp)
 {
    return ((double)timestamp) / 1000000000.0;
@@ -183,7 +183,7 @@ clock_convert(unsigned long long timestamp)
  * new data is available and then stop the sensor server to safe power. It will be
  * started again the next time data gets requested.
  */
-void
+static void
 accelerometer_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -203,7 +203,7 @@ accelerometer_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy,
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_ACCELEROMETER));
 }
 
-void
+static void
 gravity_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -223,7 +223,7 @@ gravity_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_GRAVITY));
 }
 
-void
+static void
 linear_acceleration_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -243,7 +243,7 @@ linear_acceleration_cb(unsigned long long timestamp, sensor_data_accuracy_e accu
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_LINEAR_ACCELERATION));
 }
 
-void
+static void
 device_orientation_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float yaw,
                       float pitch, float roll, void *user_data)
 {
@@ -264,7 +264,7 @@ device_orientation_cb(unsigned long long timestamp, sensor_data_accuracy_e accur
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_DEVICE_ORIENTATION));
 }
 
-void
+static void
 magnetic_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -284,7 +284,7 @@ magnetic_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MAGNETIC));
 }
 
-void
+static void
 orientation_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float azimuth, float pitch, float roll, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -304,7 +304,7 @@ orientation_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, fl
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_ORIENTATION));
 }
 
-void
+static void
 gyroscope_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -324,7 +324,7 @@ gyroscope_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, floa
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_GYROSCOPE));
 }
 
-void
+static void
 light_cb(unsigned long long timestamp, float lux, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -343,7 +343,7 @@ light_cb(unsigned long long timestamp, float lux, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_LIGHT));
 }
 
-void
+static void
 proximity_cb(unsigned long long timestamp, float distance, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -362,7 +362,7 @@ proximity_cb(unsigned long long timestamp, float distance, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_PROXIMITY));
 }
 
-void
+static void
 snap_cb(unsigned long long timestamp, sensor_motion_snap_e snap, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -381,7 +381,7 @@ snap_cb(unsigned long long timestamp, sensor_motion_snap_e snap, void *user_data
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_SNAP));
 }
 
-void
+static void
 shake_cb(unsigned long long timestamp, sensor_motion_shake_e shake, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -400,7 +400,7 @@ shake_cb(unsigned long long timestamp, sensor_motion_shake_e shake, void *user_d
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_SHAKE));
 }
 
-void
+static void
 panning_cb(unsigned long long timestamp, int x, int y, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -420,7 +420,7 @@ panning_cb(unsigned long long timestamp, int x, int y, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_PANNING));
 }
 
-void
+static void
 panning_browse_cb(unsigned long long timestamp, int x, int y, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -440,7 +440,7 @@ panning_browse_cb(unsigned long long timestamp, int x, int y, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_PANNING_BROWSE));
 }
 
-void
+static void
 tilt_cb(unsigned long long timestamp, int x, int y, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -460,7 +460,7 @@ tilt_cb(unsigned long long timestamp, int x, int y, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_TILT));
 }
 
-void
+static void
 facedown_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -480,7 +480,7 @@ facedown_cb(unsigned long long timestamp, void *user_data)
     */
 }
 
-void
+static void
 directcall_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -500,7 +500,7 @@ directcall_cb(unsigned long long timestamp, void *user_data)
     */
 }
 
-void
+static void
 smart_alert_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -520,7 +520,7 @@ smart_alert_cb(unsigned long long timestamp, void *user_data)
     */
 }
 
-void
+static void
 no_move_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -540,7 +540,7 @@ no_move_cb(unsigned long long timestamp, void *user_data)
     */
 }
 
-void
+static void
 doubletap_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -560,7 +560,7 @@ doubletap_cb(unsigned long long timestamp, void *user_data)
     */
 }
 
-void
+static void
 accelerometer_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -582,7 +582,7 @@ accelerometer_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accur
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_ACCELEROMETER));
 }
 
-void
+static void
 gravity_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -604,7 +604,7 @@ gravity_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, f
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_GRAVITY));
 }
 
-void
+static void
 linear_acceleration_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -626,7 +626,7 @@ linear_acceleration_read_cb(unsigned long long timestamp, sensor_data_accuracy_e
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_LINEAR_ACCELERATION));
 }
 
-void
+static void
 device_orientation_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float yaw,
                            float pitch, float roll, void *user_data)
 {
@@ -649,7 +649,7 @@ device_orientation_read_cb(unsigned long long timestamp, sensor_data_accuracy_e
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_DEVICE_ORIENTATION));
 }
 
-void
+static void
 magnetic_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -671,7 +671,7 @@ magnetic_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy,
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MAGNETIC));
 }
 
-void
+static void
 orientation_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float azimuth, float pitch, float roll, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -693,7 +693,7 @@ orientation_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accurac
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_ORIENTATION));
 }
 
-void
+static void
 gyroscope_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy, float x, float y, float z, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -715,7 +715,7 @@ gyroscope_read_cb(unsigned long long timestamp, sensor_data_accuracy_e accuracy,
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_GYROSCOPE));
 }
 
-void
+static void
 light_read_cb(unsigned long long timestamp, float lux, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -736,7 +736,7 @@ light_read_cb(unsigned long long timestamp, float lux, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_LIGHT));
 }
 
-void
+static void
 proximity_read_cb(unsigned long long timestamp, float distance, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -757,7 +757,7 @@ proximity_read_cb(unsigned long long timestamp, float distance, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_PROXIMITY));
 }
 
-void
+static void
 snap_read_cb(unsigned long long timestamp, sensor_motion_snap_e snap, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -778,7 +778,7 @@ snap_read_cb(unsigned long long timestamp, sensor_motion_snap_e snap, void *user
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_SNAP));
 }
 
-void
+static void
 shake_read_cb(unsigned long long timestamp, sensor_motion_shake_e shake, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -799,7 +799,7 @@ shake_read_cb(unsigned long long timestamp, sensor_motion_shake_e shake, void *u
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_SHAKE));
 }
 
-void
+static void
 doubletap_read_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -819,7 +819,7 @@ doubletap_read_cb(unsigned long long timestamp, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_DOUBLETAP));
 }
 
-void
+static void
 panning_read_cb(unsigned long long timestamp, int x, int y, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -841,7 +841,7 @@ panning_read_cb(unsigned long long timestamp, int x, int y, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_PANNING));
 }
 
-void
+static void
 panning_browse_read_cb(unsigned long long timestamp, int x, int y, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -863,7 +863,7 @@ panning_browse_read_cb(unsigned long long timestamp, int x, int y, void *user_da
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_PANNING_BROWSE));
 }
 
-void
+static void
 tilt_read_cb(unsigned long long timestamp, int x, int y, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -885,7 +885,7 @@ tilt_read_cb(unsigned long long timestamp, int x, int y, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_TILT));
 }
 
-void
+static void
 facedown_read_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -905,7 +905,7 @@ facedown_read_cb(unsigned long long timestamp, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_FACEDOWN));
 }
 
-void
+static void
 directcall_read_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -925,7 +925,7 @@ directcall_read_cb(unsigned long long timestamp, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_DIRECT_CALL));
 }
 
-void
+static void
 smart_alert_read_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -945,7 +945,7 @@ smart_alert_read_cb(unsigned long long timestamp, void *user_data)
    sensor_stop(sensor_handle, eeze_to_tizen(EEZE_SENSOR_TYPE_MOTION_SMART_ALERT));
 }
 
-void
+static void
 no_move_read_cb(unsigned long long timestamp, void *user_data)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -970,7 +970,7 @@ no_move_read_cb(unsigned long long timestamp, void *user_data)
  * might take quite some time depending on the sensor and how it is connected to
  * the system. Normally it is better to use the asynchronous reading functions.
  */
-Eina_Bool
+static Eina_Bool
 eeze_sensor_tizen_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj)
 {
    sensor_data_accuracy_e accuracy;
@@ -1095,7 +1095,7 @@ eeze_sensor_tizen_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj)
 
 // FIXME ho to handle this without explicit callback setting
 #if 0
-Eina_Bool
+static Eina_Bool
 eeze_sensor_tizen_cb_set(Eeze_Sensor *handle, Eeze_Sensor_Type sensor_type, void *cb_function, void *user_data)
 {
    sensor_type_e type;
@@ -1198,7 +1198,7 @@ eeze_sensor_tizen_cb_set(Eeze_Sensor *handle, Eeze_Sensor_Type sensor_type, void
  * event. The public API function does actually return right away with the cached
  * data. This is handled in the core and not in the different modules though.
  */
-Eina_Bool
+static Eina_Bool
 eeze_sensor_tizen_async_read(Eeze_Sensor_Type sensor_type, void *user_data)
 {
    sensor_type_e type;
@@ -1315,7 +1315,7 @@ eeze_sensor_tizen_sensors_find(void)
 }
 
 /* Cleanup when getting the shutdown callback from core */
-Eina_Bool
+static Eina_Bool
 eeze_sensor_tizen_shutdown(void)
 {
    Eeze_Sensor_Obj *obj;
@@ -1337,7 +1337,7 @@ eeze_sensor_tizen_shutdown(void)
 /* Callback from core once we registered as a module. Create the Tizen sensor
  * handle and find all available sensors.
  */
-Eina_Bool
+static Eina_Bool
 eeze_sensor_tizen_init(void)
 {
 
@@ -1362,7 +1362,7 @@ eeze_sensor_tizen_init(void)
  * entry point to anything in this module. After setting ourself up we register
  * into the core of eeze sensor to make our functionality available.
  */
-Eina_Bool
+static Eina_Bool
 sensor_tizen_init(void)
 {
 
@@ -1396,7 +1396,7 @@ sensor_tizen_init(void)
 /* Cleanup when the module gets unloaded. Unregister ourself from the core to
  * avoid calls into a not loaded module.
  */
-void
+static void
 sensor_tizen_shutdown(void)
 {
    Eeze_Sensor_Obj *sens;
@@ -1407,10 +1407,11 @@ sensor_tizen_shutdown(void)
    EINA_LIST_FREE(esensor_module->sensor_list, sens)
       free(sens);
 
+   eina_log_domain_unregister(_eeze_sensor_tizen_log_dom);
+
    free(esensor_module);
    esensor_module = NULL;
 
-   eina_log_domain_unregister(_eeze_sensor_tizen_log_dom);
    _eeze_sensor_tizen_log_dom = -1;
 }
 
index 3a24fde..e958b06 100644 (file)
@@ -18,11 +18,11 @@ static int _eeze_sensor_udev_log_dom = -1;
 #endif
 #define ERR(...)  EINA_LOG_DOM_ERR(_eeze_sensor_udev_log_dom, __VA_ARGS__)
 
-Eeze_Sensor_Module *esensor_module;
+static Eeze_Sensor_Module *esensor_module;
 
-Eina_List *devices;
+static Eina_List *devices;
 
-Eina_Bool
+static Eina_Bool
 udev_init(void)
 {
    /* We only offer a temperature sensor right now */
@@ -35,7 +35,7 @@ udev_init(void)
    return EINA_TRUE;
 }
 
-Eina_Bool
+static Eina_Bool
 udev_shutdown(void)
 {
    char *data;
@@ -46,7 +46,7 @@ udev_shutdown(void)
    return EINA_TRUE;
 }
 
-double
+static double
 _udev_read(void)
 {
    Eina_List *l;
@@ -88,7 +88,7 @@ _udev_read(void)
    return temp;
 }
 
-Eina_Bool
+static Eina_Bool
 udev_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -122,7 +122,7 @@ udev_read(Eeze_Sensor_Type sensor_type, Eeze_Sensor_Obj *lobj)
    return EINA_TRUE;
 }
 
-Eina_Bool
+static Eina_Bool
 udev_async_read(Eeze_Sensor_Type sensor_type, void *user_data EINA_UNUSED)
 {
    Eeze_Sensor_Obj *obj = NULL;
@@ -157,7 +157,7 @@ udev_async_read(Eeze_Sensor_Type sensor_type, void *user_data EINA_UNUSED)
  * entry point to anything in this module. After setting ourself up we register
  * into the core of eeze sensor to make our functionality available.
  */
-Eina_Bool
+static Eina_Bool
 sensor_udev_init(void)
 {
 
@@ -183,7 +183,7 @@ sensor_udev_init(void)
    esensor_module->read = udev_read;
    esensor_module->async_read = udev_async_read;
 
-   if (!eeze_sensor_module_register("fake", esensor_module))
+   if (!eeze_sensor_module_register("udev", esensor_module))
      {
         ERR("Failed to register udev module.");
         return EINA_FALSE;
@@ -194,7 +194,7 @@ sensor_udev_init(void)
 /* Cleanup when the module gets unloaded. Unregister ourself from the core to
  * avoid calls into a not loaded module.
  */
-void
+static void
 sensor_udev_shutdown(void)
 {
    Eeze_Sensor_Obj *sens;
@@ -203,10 +203,11 @@ sensor_udev_shutdown(void)
    EINA_LIST_FREE(esensor_module->sensor_list, sens)
       free(sens);
 
+   eina_log_domain_unregister(_eeze_sensor_udev_log_dom);
+
    free(esensor_module);
    esensor_module = NULL;
 
-   eina_log_domain_unregister(_eeze_sensor_udev_log_dom);
    _eeze_sensor_udev_log_dom = -1;
 }