Code::Blocks Forums

Developer forums (C::B DEVELOPMENT STRICTLY!) => Development => Topic started by: MortenMacFly on October 09, 2006, 03:32:44 pm

Title: Project files without linefeed
Post by: MortenMacFly on October 09, 2006, 03:32:44 pm
Did anyone other than me experienced that the project files when saved with a recent version of C::B have no linefeeds anymore? I'm not sure when this happened, I guess it has to do with the change in the TinyXml version...?! Thomas?
With regards, Morten.
Title: Re: Project files without linefeed
Post by: thomas on October 09, 2006, 03:42:08 pm
Yes, and no :)

That was the case for a couple of releases, but is not (should not be) now.
The ::cbSaveXmlFile function in globals.cpp was not working well under 2.5.2 as streaming to a string enables "stream mode" which removes all newlines and indentation.

::cbSaveXmlFile is now an alias for TinyXML::Save which is a Unicode-safe wrapper around the TinyXML API to save a file (previously only used to save configuration).
Safe, formatted, with indentation, and with newlines... :)
Title: Re: Project files without linefeed
Post by: mandrav on October 09, 2006, 04:15:41 pm
Actually, I recall having hacked the old TinyXML sources to allow for stream formatting.
So if Thomas hadn't re-applied my hack, obviously the formatting would be lost ;).

Anyway, if this hack is not needed anymore that's even better :).
Title: Re: Project files without linefeed
Post by: killerbot on October 09, 2006, 04:46:46 pm
TiXmlPrinter is the key to success ;-)