[content] Fix a bug when perform SearchN using DateTime whereExpr
authorSeokpil Park <seokpil.park@samsung.com>
Wed, 20 Mar 2013 11:03:56 +0000 (20:03 +0900)
committerSeokpil Park <seokpil.park@samsung.com>
Wed, 20 Mar 2013 11:03:59 +0000 (20:03 +0900)
Change-Id: I14a6efe676d14421903cbf4e48613d09223776c3
Signed-off-by: Seokpil Park <seokpil.park@samsung.com>
src/FCnt_ContentSearchImpl.cpp

index 2aff5cf..8d6c8c7 100644 (file)
@@ -345,7 +345,7 @@ _ContentSearchImpl::ReplaceOspColumnNameWithSlp(void) const
        SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "AppendEscapeKeywordForLikeQuery failed.");\r
 \r
        r = ReplaceDateTimeStringWithInt();\r
-       SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "ReplaceDateTimeStringWithInt failed.");\r
+       SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_INVALID_ARG, "ReplaceDateTimeStringWithInt failed.");\r
 \r
        // replace splApostrophe string with actual\r
        r = __inputExpr.Replace(splApostrophe, "''");\r
@@ -447,7 +447,7 @@ _ContentSearchImpl::ReplaceDateTimeStringWithInt(void) const
        while (strTok.HasMoreTokens())\r
        {\r
                r = strTok.GetNextToken(token);\r
-               SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "GetNextToken failed.");\r
+               SysTryReturnResult(NID_CNT, r == E_SUCCESS, r, "GetNextToken failed.");\r
                if (isCol) //column name\r
                {\r
                        isCol = false;\r
@@ -473,19 +473,21 @@ _ContentSearchImpl::ReplaceDateTimeStringWithInt(void) const
                                        isConvertReq = false;\r
                                }\r
                        }\r
+\r
                        r = inputExpr.Append(token);\r
-                       SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "string append failed.");\r
+                       SysTryReturnResult(NID_CNT, r == E_SUCCESS, r, "string append failed.");\r
                }\r
                else // value of the column\r
                {\r
                        isCol = true;\r
                        r = inputExpr.Append("'");\r
-                       SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "string append failed.");\r
+                       SysTryReturnResult(NID_CNT, r == E_SUCCESS, r, "string append failed.");\r
 \r
                        if (isConvertReq)\r
                        {\r
                                Tizen::Base::DateTime dt;\r
-                               Tizen::Base::DateTime::Parse(token, dt);\r
+                               r = Tizen::Base::DateTime::Parse(token, dt);\r
+                               SysTryReturnResult(NID_CNT, r == E_SUCCESS, r, "Failed to parse DateTime.");\r
 \r
                                int year = dt.GetYear();\r
                                int month = dt.GetMonth(); \r
@@ -494,7 +496,7 @@ _ContentSearchImpl::ReplaceDateTimeStringWithInt(void) const
                                int minute = dt.GetMinute(); \r
                                int second = dt.GetSecond();\r
                                \r
-                                time_t rawTime;\r
+                               time_t rawTime;\r
                                struct tm* timeInfo;\r
 \r
                                time(&rawTime);\r
@@ -507,24 +509,27 @@ _ContentSearchImpl::ReplaceDateTimeStringWithInt(void) const
                                timeInfo->tm_sec = second;\r
 \r
                                time_t seconds = mktime(timeInfo);\r
+                               SysTryReturnResult(NID_CNT, seconds != -1, E_INVALID_ARG, "Failed to convert DateTime to broken-down time.");\r
+\r
                                long long ticksInSeconds = (long long)seconds;\r
 \r
                                r = inputExpr.Append(ticksInSeconds);\r
-                               SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "string append failed.");\r
+                               SysTryReturnResult(NID_CNT, r == E_SUCCESS, r, "string append failed.");\r
                        }\r
                        else\r
                        {\r
                                r = inputExpr.Append(token);\r
-                               SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "string append failed.");\r
+                               SysTryReturnResult(NID_CNT, r == E_SUCCESS, r, "string append failed.");\r
                        }\r
+\r
                        r = inputExpr.Append("'");\r
-                       SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "string append failed.");\r
+                       SysTryReturnResult(NID_CNT, r == E_SUCCESS, r, "string append failed.");\r
                }\r
        }\r
 \r
        __inputExpr.Clear();\r
        r = __inputExpr.Insert(inputExpr, 0);\r
-       SysTryReturnResult(NID_CNT, r == E_SUCCESS, E_SYSTEM, "string insert failed.");\r
+       SysTryReturnResult(NID_CNT, r == E_SUCCESS, r, "string insert failed.");\r
 \r
        return r;\r
 }\r