diff --git a/src/xml/repr-util.cpp b/src/xml/repr-util.cpp
index 3a6b9aee45e7c3b192388f45d0ac0611a4542966..42b957d438da11b857b5266032c5a9ee68d1b9bd 100644 (file)
--- a/src/xml/repr-util.cpp
+++ b/src/xml/repr-util.cpp
static void
sp_xml_ns_register_defaults()
{
- static SPXMLNs defaults[8];
+ static SPXMLNs defaults[9];
defaults[0].uri = g_quark_from_static_string(SP_SODIPODI_NS_URI);
defaults[0].prefix = g_quark_from_static_string("sodipodi");
defaults[7].uri = g_quark_from_static_string(SP_BROKEN_SODIPODI_NS_URI);
defaults[7].prefix = g_quark_from_static_string("sodipodi");
- defaults[7].next = NULL;
+ defaults[7].next = &defaults[8];
+
+ // "Duck prion"
+ // This URL became widespread due to a bug in versions <= 0.43
+
+ defaults[8].uri = g_quark_from_static_string("http://inkscape.sourceforge.net/DTD/s odipodi-0.dtd");
+ defaults[8].prefix = g_quark_from_static_string("sodipodi");
+ defaults[8].next = NULL;
namespaces = &defaults[0];
}
return g_ascii_strtod(result, NULL);
}
-int sp_repr_get_int_attribute(Inkscape::XML::Node *repr, char const *key, int def)
+long long int sp_repr_get_int_attribute(Inkscape::XML::Node *repr, char const *key, long long int def)
{
char *result;
@@ -323,7 +330,7 @@ int sp_repr_get_int_attribute(Inkscape::XML::Node *repr, char const *key, int de
if (result == NULL) return def;
- return atoi(result);
+ return atoll(result);
}
/**