[misc] fixed wrong loog when vcalendar tizd parsing
authorJeesun Kim <iamjs.kim@samsung.com>
Fri, 12 Apr 2013 13:15:32 +0000 (22:15 +0900)
committerJeesun Kim <iamjs.kim@samsung.com>
Sat, 13 Apr 2013 03:09:16 +0000 (12:09 +0900)
Change-Id: I9b2cc2adb3cd62a9690ae9286da591cf156b066b

CMakeLists.txt
common/cal_vcalendar_parse.c
dft/CMakeLists.txt

index dd53471..8df46ee 100755 (executable)
@@ -6,7 +6,7 @@ PROJECT(calendar-service C CXX)
 #ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
 #MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
 
-SET(DEST_INCLUDE_DIR "include/calendar-svc")
+SET(DEST_INCLUDE_DIR "include")
 SET(SRC_INCLUDE_DIR "${CMAKE_SOURCE_DIR}/include")
 
 SET(PREFIX ${CMAKE_INSTALL_PREFIX})
index bc961ee..14f806b 100644 (file)
@@ -665,14 +665,14 @@ static char *__cal_vcalendar_parse_dtstart_tzid(char *q)
                ERR("calloc() failed");
                return NULL;
        }
-       for (i = 0; i < len; i++)
+       for (i = 0; i < len -j; i++)
        {
                if (q[j + i] == '\"' && has_quot == 0)
                {
                        j++;
                        has_quot = 1;
                }
-               else if (q[len -1] == '\"' && has_quot == 1)
+               else if (i == (len -j -1) && q[i] == '\"' && has_quot == 1)
                {
                        break;
                }
@@ -709,6 +709,7 @@ int __cal_vcalendar_parse_dtstart_time(calendar_list_h list, char *q, char *tzid
 {
        int len = 0;
        int y, m, d, h, min, s;
+       char c, z;
 
        if (NULL == q || NULL == caltime)
        {
@@ -721,14 +722,24 @@ int __cal_vcalendar_parse_dtstart_time(calendar_list_h list, char *q, char *tzid
        switch (caltime->type)
        {
        case CALENDAR_TIME_LOCALTIME:
-               sscanf(q, "%4d%2d%2d", &y, &m, &d);
+               sscanf(q, "%04d%02d%02d", &y, &m, &d);
                caltime->time.date.year = y;
                caltime->time.date.month = m;
                caltime->time.date.mday = d;
                break;
 
        case CALENDAR_TIME_UTIME:
-               sscanf(q, "%4d%2d%2dT%2d%2d%2dZ", &y, &m, &d, &h, &min, &s);
+               if (strlen(q) == strlen("YYYYMMDDTHHMMSSZ"))
+               {
+                       sscanf(q, "%04d%02d%02dT%02d%02d%02dZ", &y, &m, &d, &h, &min, &s);
+                       DBG("get GMT time[%04d/%02d/%02d %02d:%02d:%02d]", y, m, d, h, min, s);
+               }
+               else
+               {
+                       sscanf(q, "%04d%02d%02dT%02d%02d%02d", &y, &m, &d, &h, &min, &s);
+                       DBG("get local time[%04d/%02d/%02d %02d:%02d:%02d]", y, m, d, h, min, s);
+               }
+
                if (NULL == tzid || len == strlen("YYYYMMDDTHHMMSSZ"))
                {
                        // Z means GMT
index af0e47f..cdc8b65 100644 (file)
@@ -10,7 +10,7 @@ SET(PREFIX "/usr")
 SET(BINDIR "${PREFIX}/bin")
 SET(OPTDIR "/usr/share/calendar-svc")
 
-SET(LIBNAME calendar-service-native)
+SET(LIBNAME calendar-service2)
 
 IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
        SET(CMAKE_BUILD_TYPE "Release")