diff options
author | Robin Gareus <robin@gareus.org> | 2014-07-05 20:53:22 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-07-05 20:53:22 +0200 |
commit | c9b0f0fcb7626de7afef2f3fca1b0c1dbd01bd5b (patch) | |
tree | 077715ccc2f8a486bb04868a02eee0591949a8ba | |
parent | 63d81d2419e08b357af2e9d94d077eb1556a72a6 (diff) |
debug info to trace down "cannot rename temp session file" errors
..but actually, the real error may be concurrent
calls to Session::save_state()
-rw-r--r-- | libs/pbd/xml++.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libs/pbd/xml++.cc b/libs/pbd/xml++.cc index 69187995a1..5fb777bdc7 100644 --- a/libs/pbd/xml++.cc +++ b/libs/pbd/xml++.cc @@ -155,6 +155,20 @@ XMLTree::write() const xmlSetDocCompressMode(doc, _compression); writenode(doc, _root, doc->children, 1); result = xmlSaveFormatFileEnc(_filename.c_str(), doc, "UTF-8", 1); +#ifndef NDEBUG + if (result == -1) { + xmlErrorPtr xerr = xmlGetLastError (); + if (!xerr) { + std::cerr << "unknown XML error during xmlSaveFormatFileEnc()." << std::endl; + } else { + std::cerr << "xmlSaveFormatFileEnc: error" + << " domain: " << xerr->domain + << " code: " << xerr->code + << " msg: " << xerr->message + << std::endl; + } + } +#endif xmlFreeDoc(doc); if (result == -1) { |