Make reliable module 05/141905/1 accepted/tizen/4.0/unified/20170816.013853 accepted/tizen/4.0/unified/20170816.014219 accepted/tizen/unified/20170804.025553 submit/tizen/20170803.051344 submit/tizen_4.0/20170811.094300 submit/tizen_4.0/20170814.115522 submit/tizen_4.0_unified/20170814.115522
authorShinwoo Kim <cinoo.kim@samsung.com>
Wed, 2 Aug 2017 03:18:47 +0000 (12:18 +0900)
committerShinwoo Kim <cinoo.kim@samsung.com>
Wed, 2 Aug 2017 03:23:43 +0000 (12:23 +0900)
E_NEW could return NULL.
So screen-reader module is checking return value of E_NEW before using it.

Change-Id: I755ec02a5a56ff98946d569bb41f3db63d58d6c6

src/e_screen_reader_config.c

index 9430773..5729651 100644 (file)
@@ -7,10 +7,11 @@ Gestures_Config *_e_mod_config;
 static E_Config_DD *_conf_edd;
 
 
-static void
+static Eina_Bool
 _e_mod_config_new(void)
 {
    _e_mod_config = E_NEW(Gestures_Config, 1);
+   if (!_e_mod_config) return EINA_FALSE;
 
    _e_mod_config->one_finger_flick_min_length = 100;
    _e_mod_config->one_finger_flick_max_time = 400;
@@ -20,6 +21,8 @@ _e_mod_config_new(void)
    _e_mod_config->one_finger_tap_radius = 100;
    _e_mod_config->two_finger_flick_to_scroll_timeout = 100;
    _e_mod_config->two_finger_flick_to_scroll_min_length = 50;
+
+   return EINA_TRUE;
 }
 
 int _e_mod_atspi_config_init(void)
@@ -40,7 +43,12 @@ int _e_mod_atspi_config_init(void)
 
    if (!_e_mod_config)
      {
-        _e_mod_config_new();
+        if (!_e_mod_config_new())
+          {
+             ERROR("Could not create module config.");
+             return 1;
+          }
+
         _e_mod_atspi_config_save();
         INFO("New config file for e-mod-tizen-screen-reader module created.");
      }