Fix issues detected by prevent 41/41741/1
authorLi Zhang <li2012.zhang@samsung.com>
Wed, 17 Jun 2015 09:29:46 +0000 (17:29 +0800)
committerLi Zhang <li2012.zhang@samsung.com>
Wed, 17 Jun 2015 09:29:46 +0000 (17:29 +0800)
Change-Id: I80710156e994c8657741b9db2c3288d6796def1c
Signed-off-by: Li Zhang <li2012.zhang@samsung.com>
ism/src/scim_module.cpp

index 8863ed6..ea61f07 100644 (file)
@@ -127,13 +127,14 @@ scim_get_module_list (std::vector <String>& mod_list, const String& type)
                 while (file) {
                     struct stat filestat;
                     String absfn = *i + String (SCIM_PATH_DELIM_STRING) + file->d_name;
-                    stat (absfn.c_str (), &filestat);
-                    if (S_ISREG (filestat.st_mode)) {
-                        String mod_name = String (file->d_name);
-                        mod_list.push_back (mod_name.substr (0, mod_name.find_last_of ('.')));
+                    if (stat (absfn.c_str (), &filestat) == 0) {
+                        if (S_ISREG (filestat.st_mode)) {
+                            String mod_name = String (file->d_name);
+                            mod_list.push_back (mod_name.substr (0, mod_name.find_last_of ('.')));
+                        }
                     }
 
-                    if (readdir_r (dir, &direntp, &file) != 0){
+                    if (readdir_r (dir, &direntp, &file) != 0) {
                         break;
                     }
                 }