librsvg r1203 - trunk
- From: doml svn gnome org
- To: svn-commits-list gnome org
- Subject: librsvg r1203 - trunk
- Date: Thu, 19 Feb 2009 23:29:16 +0000 (UTC)
Author: doml
Date: Thu Feb 19 23:29:16 2009
New Revision: 1203
URL: http://svn.gnome.org/viewvc/librsvg?rev=1203&view=rev
Log:
2009-02-19 Christian Persch <chpe gnome org>
* rsvg-base.c: better error messages. Bug #567307
Modified:
trunk/ChangeLog
trunk/rsvg-base.c
Modified: trunk/rsvg-base.c
==============================================================================
--- trunk/rsvg-base.c (original)
+++ trunk/rsvg-base.c Thu Feb 19 23:29:16 2009
@@ -1058,6 +1058,24 @@
return g_quark_from_string ("rsvg-error-quark");
}
+static void
+rsvg_set_error (GError **error, xmlParserCtxtPtr ctxt)
+{
+ xmlErrorPtr xerr;
+
+ xerr = xmlCtxtGetLastError (ctxt);
+ if (xerr) {
+ g_set_error (error, rsvg_error_quark (), 0,
+ _("Error domain %d code %d on line %d column %d of %s: %s"),
+ xerr->domain, xerr->code,
+ xerr->line, xerr->int2,
+ xerr->file ? xerr->file : "data",
+ xerr->message ? xerr->message: "-");
+ } else {
+ g_set_error (error, rsvg_error_quark (), 0, _("Error parsing XML data"));
+ }
+}
+
static gboolean
rsvg_handle_write_impl (RsvgHandle * handle, const guchar * buf, gsize count, GError ** error)
{
@@ -1079,7 +1097,7 @@
result = xmlParseChunk (handle->priv->ctxt, (char *) buf, count, 0);
if (result != 0) {
- g_set_error (error, rsvg_error_quark (), 0, _("Error parsing XML data"));
+ rsvg_set_error (error, handle->priv->ctxt);
return FALSE;
}
@@ -1113,7 +1131,7 @@
xmlFreeDoc (xmlDoc);
if (result != 0) {
- g_set_error (error, rsvg_error_quark (), 0, _("Error parsing XML data"));
+ rsvg_set_error (error, handle->priv->ctxt);
return FALSE;
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]