浏览代码

Do not pass -e in shell script shebangs, set it in the body

This guarantees that the -e option will be set even if the script is
invoked as an argument to sh.

Warned-by: lintian
Guillem Jover 13 年之前
父节点
当前提交
7b1b83d9df
共有 9 个文件被更改,包括 20 次插入11 次删除
  1. 1 0
      debian/changelog
  2. 3 1
      debian/dpkg-dev.preinst
  3. 1 4
      debian/dpkg.lintian-overrides
  4. 2 1
      debian/dpkg.postinst
  5. 2 1
      debian/dpkg.postrm
  6. 3 1
      debian/dpkg.preinst
  7. 3 1
      debian/dpkg.prerm
  8. 3 1
      debian/dselect.preinst
  9. 2 1
      doc/triggers.txt

+ 1 - 0
debian/changelog

@@ -17,6 +17,7 @@ dpkg (1.17.0) UNRELEASED; urgency=low
     Closes: #699807
     Closes: #699807
   * Fix clang warnings due to change of alignment requirements.
   * Fix clang warnings due to change of alignment requirements.
   * Change copyright file to point to GPL-2 instead of GPL.
   * Change copyright file to point to GPL-2 instead of GPL.
+  * Do not pass -e in shell script shebangs, set it in the body.
 
 
  -- Guillem Jover <guillem@debian.org>  Fri, 03 Aug 2012 13:21:00 +0200
  -- Guillem Jover <guillem@debian.org>  Fri, 03 Aug 2012 13:21:00 +0200
 
 

+ 3 - 1
debian/dpkg-dev.preinst

@@ -1,4 +1,4 @@
-#!/bin/sh -e
+#!/bin/sh
 # This script can be called in the following ways:
 # This script can be called in the following ways:
 #
 #
 # Before the package is installed:
 # Before the package is installed:
@@ -14,6 +14,8 @@
 # If postrm fails during upgrade or fails on failed upgrade:
 # If postrm fails during upgrade or fails on failed upgrade:
 #	<old-preinst> abort-upgrade <new-version>
 #	<old-preinst> abort-upgrade <new-version>
 
 
+set -e
+
 remove_doc_symlink() {
 remove_doc_symlink() {
     if [ -L /usr/share/doc/dpkg-dev ]; then
     if [ -L /usr/share/doc/dpkg-dev ]; then
 	rm /usr/share/doc/dpkg-dev
 	rm /usr/share/doc/dpkg-dev

+ 1 - 4
debian/dpkg.lintian-overrides

@@ -2,9 +2,6 @@ dpkg: redundant-origin-field
 dpkg: redundant-bugs-field
 dpkg: redundant-bugs-field
 dpkg: arch-dep-package-has-big-usr-share
 dpkg: arch-dep-package-has-big-usr-share
 # False positives, we read from a file not from a tty
 # False positives, we read from a file not from a tty
-dpkg: read-in-maintainer-script preinst:40
-dpkg: read-in-maintainer-script preinst:41
-dpkg: read-in-maintainer-script preinst:43
-dpkg: read-in-maintainer-script preinst:51
+dpkg: read-in-maintainer-script preinst:*
 # On purpose, install-info is only a wrapper that will be removed soon
 # On purpose, install-info is only a wrapper that will be removed soon
 dpkg: binary-without-manpage usr/sbin/install-info
 dpkg: binary-without-manpage usr/sbin/install-info

+ 2 - 1
debian/dpkg.postinst

@@ -1,4 +1,4 @@
-#!/bin/sh -e
+#!/bin/sh
 # This script can be called in the following ways:
 # This script can be called in the following ways:
 #
 #
 # After the package was installed:
 # After the package was installed:
@@ -18,6 +18,7 @@
 # If prerm fails during replacement due to conflict:
 # If prerm fails during replacement due to conflict:
 #	<postinst> abort-remove in-favour <new-package> <version>
 #	<postinst> abort-remove in-favour <new-package> <version>
 
 
+set -e
 
 
 # Create the database files if they don't already exist
 # Create the database files if they don't already exist
 create_database() {
 create_database() {

+ 2 - 1
debian/dpkg.postrm

@@ -1,4 +1,4 @@
-#!/bin/sh -e
+#!/bin/sh
 # This script can be called in the following ways:
 # This script can be called in the following ways:
 #
 #
 # After the package was removed:
 # After the package was removed:
@@ -26,6 +26,7 @@
 # If preinst fails during upgrade:
 # If preinst fails during upgrade:
 #	<new-postrm> abort-upgrade <old-version>
 #	<new-postrm> abort-upgrade <old-version>
 
 
+set -e
 
 
 # Remove log file when dpkg is purged
 # Remove log file when dpkg is purged
 remove_logfile() {
 remove_logfile() {

+ 3 - 1
debian/dpkg.preinst

@@ -1,4 +1,4 @@
-#!/bin/sh -e
+#!/bin/sh
 # This script can be called in the following ways:
 # This script can be called in the following ways:
 #
 #
 # Before the package is installed:
 # Before the package is installed:
@@ -14,6 +14,8 @@
 # If postrm fails during upgrade or fails on failed upgrade:
 # If postrm fails during upgrade or fails on failed upgrade:
 #	<old-preinst> abort-upgrade <new-version>
 #	<old-preinst> abort-upgrade <new-version>
 
 
+set -e
+
 # Handle upgrades from pre-conffile dpkg.cfg
 # Handle upgrades from pre-conffile dpkg.cfg
 upgrade_dpkg_non_conffile()
 upgrade_dpkg_non_conffile()
 {
 {

+ 3 - 1
debian/dpkg.prerm

@@ -1,4 +1,4 @@
-#!/bin/sh -e
+#!/bin/sh
 # This script can be called in the following ways:
 # This script can be called in the following ways:
 #
 #
 # Before the package is removed:
 # Before the package is removed:
@@ -17,6 +17,8 @@
 # Before the package is replaced due to conflict:
 # Before the package is replaced due to conflict:
 #      <prerm> remove in-favour <new-package> <version>
 #      <prerm> remove in-favour <new-package> <version>
 
 
+set -e
+
 ensure_no_triggers_noawait()
 ensure_no_triggers_noawait()
 {
 {
     admindir=${DPKG_ADMINDIR:-/var/lib/dpkg}
     admindir=${DPKG_ADMINDIR:-/var/lib/dpkg}

+ 3 - 1
debian/dselect.preinst

@@ -1,4 +1,4 @@
-#!/bin/sh -e
+#!/bin/sh
 # This script can be called in the following ways:
 # This script can be called in the following ways:
 #
 #
 # Before the package is installed:
 # Before the package is installed:
@@ -14,6 +14,8 @@
 # If postrm fails during upgrade or fails on failed upgrade:
 # If postrm fails during upgrade or fails on failed upgrade:
 #	<old-preinst> abort-upgrade <new-version>
 #	<old-preinst> abort-upgrade <new-version>
 
 
+set -e
+
 remove_doc_symlink() {
 remove_doc_symlink() {
     if [ -L /usr/share/doc/dselect ]; then
     if [ -L /usr/share/doc/dselect ]; then
 	rm /usr/share/doc/dselect
 	rm /usr/share/doc/dselect

+ 2 - 1
doc/triggers.txt

@@ -462,7 +462,8 @@ scrollkeeper, goes like this:
      - Make the postinst modifications as described above.
      - Make the postinst modifications as described above.
      - Rename scrollkeeper-update to scrollkeeper-update-now
      - Rename scrollkeeper-update to scrollkeeper-update-now
      - Provide a new wrapper script as scrollkeeper-update:
      - Provide a new wrapper script as scrollkeeper-update:
-	   #!/bin/sh -e
+	   #!/bin/sh
+	   set -e
 	   if type dpkg-trigger >/dev/null 2>&1 && \
 	   if type dpkg-trigger >/dev/null 2>&1 && \
 	      dpkg-trigger /usr/share/omf; then
 	      dpkg-trigger /usr/share/omf; then
 		 exit 0
 		 exit 0