OK, added some info to the tracking page. GIO is part of Glib 2.16, so I just
specified the version required for 0.47.
Jon A. Cruz wrote:
> Oh, and remember one *huge* issue is that bytes != characters.
> Glib::ustring handles that, but most of other C-based libs do not.
> That's a big problem for us, since among other things GTK+ apps have
> to deal with three different encodings simultaneously: UTF-8, locale
> encoding, and filesystem encoding.
Yes, I know about the UTF-8 issue. The problem is that Inkscape uses UTF-8
filenames thorought the codebase rather than filenames in filename encoding,
as required by Glib conventions. This causes a lot of fuss when working with
Glib APIs - e.g. Inkscape::IO::file_test. When it comes to file contents the
only problematic part is incremental reading of UTF-8 data, but it seems
Inkscape doesn't do this.
I'll delve into the IO code some more and then I'll come up with what
changes are necessary to transition to GIO, and what are the possible
caveats. One I have identified so far is that MemoryOutputStream, needed to
sanitize the import / export code, is only present in Glib 2.18 and not yet
present in C++ bindings, but it's easy to reimplement.
Regards, Krzysztof Kosiński.
View this message in context: http://www.nabble.com/Inkscape-and-GIO-tp20135564p20167563.html
Sent from the Inkscape - Dev mailing list archive at Nabble.com.