diff options
author | Michael Vogt <michael.vogt@ubuntu.com> | 2007-06-18 14:06:21 +0200 |
---|---|---|
committer | Michael Vogt <michael.vogt@ubuntu.com> | 2007-06-18 14:06:21 +0200 |
commit | 3238423f4d0bebf02c02fa6e5ca5b6db4fca56c5 (patch) | |
tree | 19a240aca723464d6b107afe2c1a04169a6f72c4 /cmdline | |
parent | 8a7bd39bdc6e993cd64c639e9e535a380846c2e9 (diff) |
* implement warning when Vcs-*: header is found in source record
Diffstat (limited to 'cmdline')
-rw-r--r-- | cmdline/apt-get.cc | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 554677f39..51bcfde12 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -2114,6 +2114,28 @@ bool DoSource(CommandLine &CmdL) if (Last == 0) return _error->Error(_("Unable to find a source package for %s"),Src.c_str()); + string srec = Last->AsStr(); + string::size_type pos = srec.find("\nVcs-"); + if (pos != string::npos ) + { + pos += strlen("\nVcs-"); + string vcs = srec.substr(pos,srec.find(":",pos)-pos); + pos += vcs.length()+2; + string::size_type epos = srec.find("\n", pos); + string uri = srec.substr(pos,epos-pos).c_str(); + ioprintf(c1out, _("WARNING: '%s' is maintained in " + "the '%s' version control system at:\n" + "'%s'\n"), + Src.c_str(), vcs.c_str(), uri.c_str()); + if(vcs == "Bzr") + ioprintf(c1out,_("Please use: 'bzr get %s'\n" + "to modify the package.\n"), + uri.c_str()); + ioprintf(c1out, "Are you sure you want to continue [yN]? "); + if(!YnPrompt(false)) + return _error->Error(_("Abort.")); + } + // Back track vector<pkgSrcRecords::File> Lst; if (Last->Files(Lst) == false) |