X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Flyxvc.C;h=6e4d421eee50fab9f8bad8db90e5d3899bc253d5;hb=35204f8f33d7400a5fefeffea533fb4cb4097211;hp=7244d8dccd94d55a3c5db0a90212d226df02d12d;hpb=57a24ea9124812ddc5108ff1ad304ff61acc826a;p=lyx.git diff --git a/src/lyxvc.C b/src/lyxvc.C index 7244d8dccd..6e4d421eee 100644 --- a/src/lyxvc.C +++ b/src/lyxvc.C @@ -26,27 +26,30 @@ #include "support/filetools.h" #include "support/lyxlib.h" -using lyx::support::bformat; -using lyx::support::IsFileReadable; -using lyx::support::MakeDisplayPath; -using lyx::support::tempName; -using std::endl; +namespace lyx { + +using support::bformat; +using support::isFileReadable; +using support::makeDisplayPath; +using support::tempName; +using std::endl; +using std::string; using std::pair; +namespace Alert = frontend::Alert; + LyXVC::LyXVC() { - vcs = 0; owner_ = 0; } +// for the sake of boost::scoped_ptr LyXVC::~LyXVC() -{ - delete vcs; -} +{} bool LyXVC::file_found_hook(string const & fn) @@ -54,13 +57,13 @@ bool LyXVC::file_found_hook(string const & fn) string found_file; // Check if file is under RCS if (!(found_file = RCS::find_file(fn)).empty()) { - vcs = new RCS(found_file); + vcs.reset(new RCS(found_file)); vcs->owner(owner_); return true; } // Check if file is under CVS if (!(found_file = CVS::find_file(fn)).empty()) { - vcs = new CVS(found_file, fn); + vcs.reset(new CVS(found_file, fn)); vcs->owner(owner_); return true; } @@ -91,10 +94,10 @@ void LyXVC::registrer() string const filename = owner_->fileName(); // there must be a file to save - if (!IsFileReadable(filename)) { + if (!isFileReadable(filename)) { Alert::error(_("Document not saved"), _("You must save the document " - "before it can be registered.")); + "before it can be registered.")); return; } @@ -102,26 +105,26 @@ void LyXVC::registrer() if (!vcs) { string const cvs_entries = "CVS/Entries"; - if (IsFileReadable(cvs_entries)) { + if (isFileReadable(cvs_entries)) { lyxerr[Debug::LYXVC] << "LyXVC: registering " - << MakeDisplayPath(filename) + << to_utf8(makeDisplayPath(filename)) << " with CVS" << endl; - vcs = new CVS(cvs_entries, filename); + vcs.reset(new CVS(cvs_entries, filename)); } else { lyxerr[Debug::LYXVC] << "LyXVC: registering " - << MakeDisplayPath(filename) + << to_utf8(makeDisplayPath(filename)) << " with RCS" << endl; - vcs = new RCS(filename); + vcs.reset(new RCS(filename)); } vcs->owner(owner_); } lyxerr[Debug::LYXVC] << "LyXVC: registrer" << endl; - pair tmp = + pair tmp = Alert::askForText(_("LyX VC: Initial description"), _("(no initial description)")); if (!tmp.first || tmp.second.empty()) { @@ -130,7 +133,7 @@ void LyXVC::registrer() return; } - vcs->registrer(tmp.second); + vcs->registrer(to_utf8(tmp.second)); } @@ -138,12 +141,12 @@ void LyXVC::checkIn() { lyxerr[Debug::LYXVC] << "LyXVC: checkIn" << endl; - pair tmp = Alert::askForText(_("LyX VC: Log Message")); + pair tmp = Alert::askForText(_("LyX VC: Log Message")); if (tmp.first) { if (tmp.second.empty()) { tmp.second = _("(no log message)"); } - vcs->checkIn(tmp.second); + vcs->checkIn(to_utf8(tmp.second)); } else { lyxerr[Debug::LYXVC] << "LyXVC: user cancelled" << endl; } @@ -162,10 +165,10 @@ void LyXVC::revert() { lyxerr[Debug::LYXVC] << "LyXVC: revert" << endl; - string const file = MakeDisplayPath(owner_->fileName(), 20); - string text = bformat(_("Reverting to the stored version of the " + docstring const file = makeDisplayPath(owner_->fileName(), 20); + docstring text = bformat(_("Reverting to the stored version of the " "document %1$s will lose all current changes.\n\n" - "Do you want to revert to the saved version?"), file); + "Do you want to revert to the saved version?"), file); int const ret = Alert::prompt(_("Revert to stored version of document?"), text, 0, 1, _("&Revert"), _("&Cancel")); @@ -225,7 +228,15 @@ string const LyXVC::getLogFile() const return string(); string tmpf = tempName(string(), "lyxvclog"); + if (tmpf.empty()) { + lyxerr[Debug::LYXVC] << "Could not generate logfile " + << tmpf << endl; + return string(); + } lyxerr[Debug::LYXVC] << "Generating logfile " << tmpf << endl; vcs->getLog(tmpf); return tmpf; } + + +} // namespace lyx