socsvn commit: r256767 - soc2013/mattbw/backend/query

mattbw at FreeBSD.org mattbw at FreeBSD.org
Sat Aug 31 09:40:01 UTC 2013


Author: mattbw
Date: Sat Aug 31 09:40:01 2013
New Revision: 256767
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=256767

Log:
  Further factor out "emit_dependency".
  
  This is mainly for code readability reasons.
  

Modified:
  soc2013/mattbw/backend/query/depends.c

Modified: soc2013/mattbw/backend/query/depends.c
==============================================================================
--- soc2013/mattbw/backend/query/depends.c	Sat Aug 31 08:56:33 2013	(r256766)
+++ soc2013/mattbw/backend/query/depends.c	Sat Aug 31 09:40:01 2013	(r256767)
@@ -31,6 +31,8 @@
 #include "match.h"		/* query_match_... */
 
 static bool emit_dependency(struct pkg_dep *dep, PkBackend *backend, struct pkgdb *db, unsigned int load_flags);
+static bool emit_found_dependency(PkBackend *backend, struct pkg *package);
+static bool emit_missing_dependency(PkBackend *backend, gchar *package_id);
 static gchar *dep_to_package_id(struct pkg_dep *dep);
 static struct pkg *id_to_package(gchar *package_id, struct pkgdb *db, unsigned int load_flags);
 
@@ -74,21 +76,37 @@
 	 */
 
 	package = id_to_package(package_id, db, load_flags);
-	if (package != NULL) {
-		emit_package(package, backend,
-		    pkgutils_pkg_current_state(package));
-		success = true;
+	if (package == NULL) {
+		success = emit_missing_dependency(backend, package_id);
 	} else {
-		success = (pk_backend_package(backend,
-		    PK_INFO_ENUM_UNKNOWN,
-		    package_id,
-		    "Could not find this package."));
+		success = emit_found_dependency(backend, package);
 	}
 
 	g_free(package_id);
 	return success;
 }
 
+/* Emits a dependency that has been found in the database. */
+static bool
+emit_found_dependency(PkBackend *backend, struct pkg *package)
+{
+
+	emit_package(package, backend, pkgutils_pkg_current_state(package));
+	return true;
+}
+
+
+/* Emits a dependency that has not been found in the database. */
+static bool
+emit_missing_dependency(PkBackend *backend, gchar *package_id)
+{
+
+	return pk_backend_package(backend,
+	    PK_INFO_ENUM_UNKNOWN,
+	    package_id,
+	    "Could not find this package.");
+}
+
 /* Attempts to match a dependency to a package. */
 static struct pkg *
 id_to_package(gchar *package_id, struct pkgdb *db, unsigned int load_flags)


More information about the svn-soc-all mailing list