From owner-svn-src-user@FreeBSD.ORG Mon Feb 8 06:28:33 2010 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F0DCC106566B; Mon, 8 Feb 2010 06:28:33 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id E21C68FC13; Mon, 8 Feb 2010 06:28:33 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o186SXIW058904; Mon, 8 Feb 2010 06:28:33 GMT (envelope-from dougb@svn.freebsd.org) Received: (from dougb@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o186SXE8058902; Mon, 8 Feb 2010 06:28:33 GMT (envelope-from dougb@svn.freebsd.org) Message-Id: <201002080628.o186SXE8058902@svn.freebsd.org> From: Doug Barton Date: Mon, 8 Feb 2010 06:28:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r203656 - user/dougb/portmaster X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Feb 2010 06:28:34 -0000 Author: dougb Date: Mon Feb 8 06:28:33 2010 New Revision: 203656 URL: http://svn.freebsd.org/changeset/base/203656 Log: Refactor the duplicate detection code in update_build_l(): 1. Put the case statements all on one line to condense the code a bit 2. Reorganize the code to avoid expensive greps through /var/db/pkg if we find a duplicate. Modified: user/dougb/portmaster/portmaster Modified: user/dougb/portmaster/portmaster ============================================================================== --- user/dougb/portmaster/portmaster Mon Feb 8 06:09:35 2010 (r203655) +++ user/dougb/portmaster/portmaster Mon Feb 8 06:28:33 2010 (r203656) @@ -1675,18 +1675,16 @@ update_build_l () { local origin iport new_port case "$1" in - */*) origin=$1 ; iport=`iport_from_origin $origin` + */*) origin=$1 + case "$build_l" in *\ $origin\\*) return ;; esac + iport=`iport_from_origin $origin` if [ -z "$iport" ]; then - case "$build_l" in - *\ $origin\\*) return ;; - esac build_l="${build_l}\tInstall $origin\n" return fi ;; - *) origin=`origin_from_pdb $1` ; iport=$1 - case "$build_l" in - *\ $iport\ *) return ;; - esac ;; + *) iport=$1 + case "$build_l" in *\ $iport\ *|*\ $iport\\*) return ;; esac + origin=`origin_from_pdb $1` ;; esac pm_cd $pd/$origin && new_port=`pm_make -V PKGNAME`