summaryrefslogtreecommitdiffstats
path: root/src/xplist.c
diff options
context:
space:
mode:
authorGravatar Jonathan Beck2009-01-04 20:56:05 +0100
committerGravatar Jonathan Beck2009-01-04 20:56:05 +0100
commita835ed062afea72a2c50fc002b0467925f8d9c1b (patch)
tree23a2bc7cfd487a568013c9cee7e78e46afa9ad02 /src/xplist.c
parenta3c6acf863f1a4deef76b0075c36f20de8d31197 (diff)
downloadlibplist-a835ed062afea72a2c50fc002b0467925f8d9c1b.tar.gz
libplist-a835ed062afea72a2c50fc002b0467925f8d9c1b.tar.bz2
handle date tag.
Diffstat (limited to 'src/xplist.c')
-rw-r--r--src/xplist.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/xplist.c b/src/xplist.c
index 3487f96..29d4e46 100644
--- a/src/xplist.c
+++ b/src/xplist.c
@@ -188,7 +188,10 @@ static void node_to_xml(GNode * node, gpointer xml_struct)
188 tag = XPLIST_DICT; 188 tag = XPLIST_DICT;
189 isStruct = TRUE; 189 isStruct = TRUE;
190 break; 190 break;
191 case PLIST_DATE: //TODO : handle date tag 191 case PLIST_DATE:
192 tag = XPLIST_DATE;
193 val = g_time_val_to_iso8601(&node_data->timeval);
194 break;
192 default: 195 default:
193 break; 196 break;
194 } 197 }
@@ -268,8 +271,12 @@ static void xml_to_node(xmlNodePtr xml_node, plist_t * plist_node)
268 continue; 271 continue;
269 } 272 }
270 273
271 if (!xmlStrcmp(node->name, XPLIST_DATE)) 274 if (!xmlStrcmp(node->name, XPLIST_DATE)) {
275 g_time_val_from_iso8601((char*)xmlNodeGetContent(node), &data->timeval);
276 data->type = PLIST_DATE;
277 data->length = sizeof(GTimeVal);
272 continue; //TODO : handle date tag 278 continue; //TODO : handle date tag
279 }
273 280
274 if (!xmlStrcmp(node->name, XPLIST_STRING)) { 281 if (!xmlStrcmp(node->name, XPLIST_STRING)) {
275 data->strval = strdup( (char*) xmlNodeGetContent(node)); 282 data->strval = strdup( (char*) xmlNodeGetContent(node));