Просмотр исходного кода

- only print errors if all tries to get a package by string failed
*

David Kalnischkies лет назад: 16
Родитель
Сommit
48c39e3246
2 измененных файлов с 15 добавлено и 7 удалено
  1. 12 6
      cmdline/cacheset.cc
  2. 3 1
      debian/changelog

+ 12 - 6
cmdline/cacheset.cc

@@ -200,15 +200,21 @@ PackageSet PackageSet::FromString(pkgCacheFile &Cache, std::string const &str, C
 		pkgset.insert(Pkg);
 		return pkgset;
 	}
+
+	_error->PushToStack();
+
 	PackageSet pset = FromTask(Cache, str, helper);
-	if (pset.empty() == false)
-		return pset;
+	if (pset.empty() == true) {
+		pset = FromRegEx(Cache, str, helper);
+		if (pset.empty() == true)
+			pset = helper.canNotFindPackage(Cache, str);
+	}
 
-	pset = FromRegEx(Cache, str, helper);
 	if (pset.empty() == false)
-		return pset;
-
-	return helper.canNotFindPackage(Cache, str);
+		_error->RevertToStack();
+	else
+		_error->MergeWithStack();
+	return pset;
 }
 									/*}}}*/
 // GroupedFromCommandLine - Return all versions specified on commandline/*{{{*/

+ 3 - 1
debian/changelog

@@ -5,6 +5,7 @@ apt (0.7.26~exp8) UNRELEASED; urgency=low
     - get the candidate either from an already built depcache
       or use the policy which is a bit faster than depcache generation
     - get packages by task^ with FromTask()
+    - only print errors if all tries to get a package by string failed
   * cmdline/apt-get.cc:
     - use the cachsets in the install commands
   * apt-pkg/orderlist.cc:
@@ -29,8 +30,9 @@ apt (0.7.26~exp8) UNRELEASED; urgency=low
   * apt-pkg/contrib/fileutl.cc:
     - show notice about ignored file instead of being always silent
     - add a Dir::Ignore-Files-Silently list option to control the notice
+  * 
 
- -- David Kalnischkies <kalnischkies@gmail.com>  Sat, 26 Jun 2010 20:43:09 +0200
+ -- David Kalnischkies <kalnischkies@gmail.com>  Sat, 26 Jun 2010 21:17:08 +0200
 
 apt (0.7.26~exp7) experimental; urgency=low