aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/pcs
diff options
context:
space:
mode:
authorJP Rosevear <jpr@helixcode.com>2000-09-21 00:38:16 +0800
committerJP Rosevear <jpr@src.gnome.org>2000-09-21 00:38:16 +0800
commite6c1d16b60384de66e05598967c11647e3a31ad0 (patch)
tree5c07e88e9777c1f48621dcf92b3868f135c19a3c /calendar/pcs
parent30392b4e49833a64ae612f3b55c6e220cbe24bd2 (diff)
downloadgsoc2013-evolution-e6c1d16b60384de66e05598967c11647e3a31ad0.tar
gsoc2013-evolution-e6c1d16b60384de66e05598967c11647e3a31ad0.tar.gz
gsoc2013-evolution-e6c1d16b60384de66e05598967c11647e3a31ad0.tar.bz2
gsoc2013-evolution-e6c1d16b60384de66e05598967c11647e3a31ad0.tar.lz
gsoc2013-evolution-e6c1d16b60384de66e05598967c11647e3a31ad0.tar.xz
gsoc2013-evolution-e6c1d16b60384de66e05598967c11647e3a31ad0.tar.zst
gsoc2013-evolution-e6c1d16b60384de66e05598967c11647e3a31ad0.zip
Use a local sax handler.
2000-09-20 JP Rosevear <jpr@helixcode.com> * pcs/cal-backend.c (cal_backend_get_log_entries): Use a local sax handler. * conduits/todo/todo-conduit.c (pre_sync): Use xmlSAXParseFile (map_sax_parse): Delete svn path=/trunk/; revision=5524
Diffstat (limited to 'calendar/pcs')
-rw-r--r--calendar/pcs/cal-backend.c33
1 files changed, 5 insertions, 28 deletions
diff --git a/calendar/pcs/cal-backend.c b/calendar/pcs/cal-backend.c
index 106fab28f8..350c53a78d 100644
--- a/calendar/pcs/cal-backend.c
+++ b/calendar/pcs/cal-backend.c
@@ -637,36 +637,10 @@ cal_backend_log_sax_end_element (CalBackendParseState *state, const CHAR *name)
}
}
-static xmlSAXHandler logSAXParser = {
- 0, /* internalSubset */
- 0, /* isStandalone */
- 0, /* hasInternalSubset */
- 0, /* hasExternalSubset */
- 0, /* resolveEntity */
- 0, /* getEntity */
- 0, /* entityDecl */
- 0, /* notationDecl */
- 0, /* attributeDecl */
- 0, /* elementDecl */
- 0, /* unparsedEntityDecl */
- 0, /* setDocumentLocator */
- 0, /* startDocument */
- 0, /* endDocument */
- (startElementSAXFunc)cal_backend_log_sax_start_element, /* startElement */
- (endElementSAXFunc)cal_backend_log_sax_end_element, /* endElement */
- 0, /* reference */
- 0, /* characters */
- 0, /* ignorableWhitespace */
- 0, /* processingInstruction */
- 0, /* comment */
- 0, /* warning */
- 0, /* error */
- 0, /* fatalError */
-};
-
static GHashTable *
cal_backend_get_log_entries (CalBackend *backend, CalObjType type, time_t since)
{
+ xmlSAXHandler handler;
CalBackendParseState state;
GHashTable *hash;
char *filename;
@@ -678,7 +652,9 @@ cal_backend_get_log_entries (CalBackend *backend, CalObjType type, time_t since)
if (!cal_backend_log_sync (backend))
return NULL;
- filename = cal_backend_log_name (backend->uri);
+ memset (&handler, 0, sizeof (xmlSAXHandler));
+ handler.startElement = (startElementSAXFunc)cal_backend_log_sax_start_element;
+ handler.endElement = (endElementSAXFunc)cal_backend_log_sax_end_element;
hash = g_hash_table_new (g_str_hash, g_str_equal);
@@ -687,6 +663,7 @@ cal_backend_get_log_entries (CalBackend *backend, CalObjType type, time_t since)
state.in_valid_timestamp = FALSE;
state.hash = hash;
+ filename = cal_backend_log_name (backend->uri);
if (xmlSAXUserParseFile (&logSAXParser, &state, filename) < 0)
return NULL;