File bash-completion-fix-service.patch of Package bash-completion

m 1f8b55a92aba6d03bb4c43dade1f8b2e2b847b61 Mon Sep 17 00:00:00 2001
From: David Paleino <dapal@debian.org>
Date: Thu, 17 Jun 2010 17:43:18 +0200
Subject: [PATCH] Fixed "service" completion, thanks to John Hedges (Debian: #586210)

  The patch makes it safe even when every file in /etc/init.d/*
  has a proper completion (unlikely, but seems like it happened).

  Thanks to John Hedges <john@drystone.co.uk> for the patch, slightly
  modified to make it more compact.
---
 CHANGES         |    2 +-
 contrib/service |    7 ++++---
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/contrib/service b/contrib/service
index 9ebd117..f27222a 100644
--- a/contrib/service
+++ b/contrib/service
@@ -32,9 +32,10 @@ _service()
     return 0
 } &&
 complete -F _service service
-[ -d /etc/init.d/ ] && complete -F _service -o default \
-    $(for i in /etc/init.d/*; do
-    complete -p ${i##*/} &>/dev/null || printf '%s\n' ${i##*/}; done)
+[ -d /etc/init.d/ ] && (
+    services=$(for i in /etc/init.d/*; do
+        complete -p ${i##*/} &>/dev/null || printf '%s\n' ${i##*/}; done)
+    [ -n "$services" ] && complete -F _service -o default $services;)
 
 # Local variables:
 # mode: shell-script
-- 
1.7.1
openSUSE Build Service is sponsored by