X-Recipient: archive-cygwin AT delorie DOT com X-Spam-Check-By: sourceware.org Date: Thu, 12 Aug 2010 16:40:58 +0200 From: Corinna Vinschen To: cygwin AT cygwin DOT com Subject: Re: Postinstall script errors Message-ID: <20100812144058.GK14202@calimero.vinschen.de> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <20100812095930 DOT GX14202 AT calimero DOT vinschen DOT de> <4C6400CF DOT 9050800 AT gmx DOT de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <4C6400CF.9050800@gmx.de> User-Agent: Mutt/1.5.20 (2009-06-14) Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On Aug 12 16:10, Matthias Andree wrote: > Am 12.08.2010 15:37, schrieb Jeremy Ramer: > > I verified that $created_passwd and $created_group were both no so > > both conditionals will fail. But because the last conditional is the > > last thing run, the script returns 1. Adding an exit 0 to the script > > fixes it, but I'm not sure if that accomplishes what you want from the > > script. > > PLEASE DON'T. > > Adding an "exit 0" will mask the error and just reinstate the former state of > silently failing postinstall scripts more rigidly. This is not desirable. The > proper way to fix this is: > > set -e # this is providing that the whole script is written properly. > # it causes immediate exit after one command (outside if, and > # outside || or && lists) fails - usually desirable, but takes more > # work because you can't write the scripts as sloppily as the > # snippet you've just shown from passwd-grp.sh. > # > # ...other work... > # > if [ "$created_passwd" = "yes" ] ; then > /bin/chgrp --silent root /etc/passwd > fi > > if [ "$created_group" = "yes" ] ; then > /bin/chgrp --silent root /etc/group > fi I misinterpreted the `chgrp --silent'. I thought it would result in an exit code of 0 from chgrp, but it just suppresses the error messages. Sorry about that. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple