[gxml: 6/7] Setup 0.8.2 release
- From: Daniel Espinosa Ortiz <despinosa src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gxml: 6/7] Setup 0.8.2 release
- Date: Thu, 14 Jan 2016 14:42:03 +0000 (UTC)
commit bd6d257704450efbebd4f1d796ffc0e9d17c3bc1
Author: Daniel Espinosa <esodan gmail com>
Date: Wed Jan 13 15:14:30 2016 -0600
Setup 0.8.2 release
* Added remote file read test
* Check error message not to be null before throw errors
NEWS | 7 +++++++
configure.ac | 4 ++--
gxml/libxml-Document.vala | 16 ++++++++++++----
test/DocumentTest.vala | 29 +++++++++++++++++++++++++++++
4 files changed, 50 insertions(+), 6 deletions(-)
---
diff --git a/NEWS b/NEWS
index 5c4bb01..24d03eb 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,11 @@
=============
+Version 0.8.2
+=============
+
+* Fixed sigfault on xDocumento.from_stream()
+* Added test for remote file read using GLib.File
+
+=============
Version 0.8.1
=============
diff --git a/configure.ac b/configure.ac
index 9c0fbb6..b5a93cc 100644
--- a/configure.ac
+++ b/configure.ac
@@ -12,7 +12,7 @@
# Release Version
m4_define([project_major_version], [0])
m4_define([project_minor_version], [8])
-m4_define([project_micro_version], [1])
+m4_define([project_micro_version], [2])
m4_define([project_nano_version], [0])
# LT_VERSION
@@ -22,7 +22,7 @@ m4_define([project_nano_version], [0])
# If public symbols have been added since last release, increment age
# If public symbols have been removed since last release, set age to 0
m4_define([project_lt_current], [8])
-m4_define([project_lt_revision], [1])
+m4_define([project_lt_revision], [2])
m4_define([project_lt_age], [0])
# Combine numbers to various version variables (different uses)
diff --git a/gxml/libxml-Document.vala b/gxml/libxml-Document.vala
index 95542f9..831f899 100644
--- a/gxml/libxml-Document.vala
+++ b/gxml/libxml-Document.vala
@@ -442,14 +442,16 @@ namespace GXml {
throw new GXml.Error.PARSER (errmsg);
}
Xmlx.reset_last_error ();
- e = Xmlx.get_last_error ();
var doc = Xml.Parser.parse_memory ((string) ostream.data, ((string)
ostream.data).length);
if (doc != null) {
this.from_libxml2 (doc);
} else {
+ errmsg = "Parser Error";
e = Xmlx.get_last_error ();
if (e != null) {
- errmsg += ". " + libxml2_error_to_string (e);
+ string s = libxml2_error_to_string (e);
+ if (s != null)
+ errmsg += s;
}
GXml.exception (DomException.INVALID_DOC, errmsg);
throw new GXml.Error.PARSER (errmsg);
@@ -491,7 +493,10 @@ namespace GXml {
this.from_libxml2 (doc);
var e = Xmlx.get_last_error ();
if (e != null) {
- var errmsg = ". " + libxml2_error_to_string (e);
+ var errmsg = "Parser Error for string";
+ string s = libxml2_error_to_string (e);
+ if (s != null)
+ errmsg = ". ";
GXml.exception (DomException.INVALID_DOC, errmsg);
throw new GXml.Error.PARSER (errmsg);
}
@@ -534,7 +539,10 @@ namespace GXml {
// uh oh
e = Xmlx.get_last_error ();
if (e != null) {
- errmsg += ". " + libxml2_error_to_string (e);
+ errmsg = "Error to save to path";
+ string s = libxml2_error_to_string (e);
+ if (s != null)
+ errmsg += ". ";
}
// TODO: use xmlGetLastError to get the real error message
diff --git a/test/DocumentTest.vala b/test/DocumentTest.vala
index 931b2c0..1dc6956 100644
--- a/test/DocumentTest.vala
+++ b/test/DocumentTest.vala
@@ -125,6 +125,35 @@ class DocumentTest : GXmlTest {
assert_not_reached ();
}
});
+ Test.add_func ("/gxml/document/gfile/remote", () => {
+ try {
+ var rf = GLib.File.new_for_uri
("https://git.gnome.org/browse/gxml/plain/gxml.doap");
+ assert (rf.query_exists ());
+ var d = new xDocument.from_gfile (rf);
+ assert (d != null);
+ assert (d.root != null);
+ assert (d.root.name == "Project");
+ bool fname, fshordesc, fdescription, fhomepage;
+ fname = fshordesc = fdescription = fhomepage = false;
+ foreach (GXml.Node n in d.root.childs) {
+ if (n.name == "name") fname = true;
+ if (n.name == "shortdesc") fshordesc = true;
+ if (n.name == "description") fdescription = true;
+ if (n.name == "homepage") fhomepage = true;
+ }
+ assert (fname);
+ assert (fshordesc);
+ assert (fdescription);
+ assert (fhomepage);
+ var f = GLib.File.new_for_path (GXmlTestConfig.TEST_SAVE_DIR+"/xml.doap");
+ d.save_as (f);
+ assert (f.query_exists ());
+ f.delete ();
+ } catch (GLib.Error e) {
+ GLib.message ("Error: "+e.message);
+ assert_not_reached ();
+ }
+ });
Test.add_func ("/gxml/document/construct_from_stream_error", () => {
File fin;
InputStream instream;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]