tizen 2.4 release
[framework/web/wrt-commons.git] / modules / utils / src / folder_size.cpp
old mode 100644 (file)
new mode 100755 (executable)
similarity index 80%
rename from modules_mobile/utils/src/folder_size.cpp
rename to modules/utils/src/folder_size.cpp
index 522216a..facbf56
 #include <sstream>
 #include <vector>
 
-#include <dpl/log/log.h>
+#include <dpl/log/wrt_log.h>
 #include <dpl/foreach.h>
 #include <dpl/utils/folder_size.h>
 
 namespace Utils {
 size_t getFolderSize(const std::string& path)
 {
+    char *errstr = NULL;
+    char errbuf[512] = {0,};
     size_t size = 0;
     FTS *fts;
     FTSENT *ftsent;
@@ -44,8 +46,15 @@ size_t getFolderSize(const std::string& path)
     if ((fts = fts_open(paths, FTS_PHYSICAL | FTS_NOCHDIR, NULL)) == NULL) {
         //ERROR
         int error = errno;
-        LogWarning(__PRETTY_FUNCTION__ << ": fts_open failed with error: "
-                                       << strerror(error));
+
+#ifdef _GNU_SOURCE
+        errstr = strerror_r(error, errbuf, sizeof(errbuf));
+#else
+        strerror_r(error, errbuf, sizeof(errbuf));
+        errstr = errbuf;
+#endif
+        WrtLogW("%s: fts_open failed with error: %s",
+            __PRETTY_FUNCTION__, errstr);
         return 0;
     }
 
@@ -69,19 +78,29 @@ size_t getFolderSize(const std::string& path)
         case FTS_DNR:
         case FTS_ERR:
         default:
-            LogWarning(__PRETTY_FUNCTION__
-                       << ": traversal failed on file: "
-                       << ftsent->fts_path
-                       << " with error: "
-                       << strerror(ftsent->fts_errno));
+#ifdef _GNU_SOURCE
+            errstr = strerror_r(ftsent->fts_errno, errbuf, sizeof(errbuf));
+#else
+            strerror_r(ftsent->fts_errno, errbuf, sizeof(errbuf));
+            errstr = errbuf;
+#endif
+            WrtLogW("%s: traversal failed on file: %s with error: %s",
+                    __PRETTY_FUNCTION__, ftsent->fts_path,
+                    errstr);
             return 0;
         }
     }
 
     if (fts_close(fts) == -1) {
         int error = errno;
-        LogWarning(__PRETTY_FUNCTION__ << ": fts_close failed with error: "
-                                       << strerror(error));
+#ifdef _GNU_SOURCE
+        errstr = strerror_r(error, errbuf, sizeof(errbuf));
+#else
+        strerror_r(error, errbuf, sizeof(errbuf));
+        errstr = errbuf;
+#endif
+        WrtLogW("%s: fts_close failed with error: %s",
+                __PRETTY_FUNCTION__, errstr);
         return 0;
     }