Package: grub-common
Version: 1.99-14
Severity: normal
Tags: wheezy sid

Grub bash_completion file /etc/bash_completion.d/grub crashes gdm
xsession start when you source bash_completion via /etc/bash.bashrc.

The reason for this is the naming of the two functions
_grub_mkpasswd-pbkdf2 and _grub_script-check. See ~/.xsession-errors log:

/etc/gdm/Xsession: Beginning session setup...
/etc/bash_completion.d/grub: Zeile 417: `_grub_mkpasswd-pbkdf2': Ist
kein gültiger Bezeichner.

/etc/gdm/Xsession: Beginning session setup...
/etc/bash_completion.d/grub: Zeile 477: `_grub_script-check': Ist kein
gültiger Bezeichner.

If you replace the '-' character with '_' then gdm xession starts
without any errors. That is exactly what the attached patch does.
Description: Replace '-' character in function names _grub_mkpasswd-pbkdf2 
 and _grub_script-check with '_' character. Of course updating all 
 references of these 2 functions.
Author: Maximilian Gerhard <[email protected]>
--- a/util/bash-completion.d/grub-completion.bash.in
+++ b/util/bash-completion.d/grub-completion.bash.in
@@ -402,7 +402,7 @@
 #
 # grub-mkpasswd-pbkdf2
 #
-_grub_mkpasswd-pbkdf2 () {
+_grub_mkpasswd_pbkdf2 () {
     local cur
 
     COMPREPLY=()
@@ -417,7 +417,7 @@
 }
 __grub_mkpasswd_pbkdf2_program=$( echo grub-mkpasswd-pbkdf2 | sed "@program_transform_name@" )
 have ${__grub_mkpasswd_pbkdf2_program} && \
- complete -F _grub_mkpasswd-pbkdf2 -o filenames ${__grub_mkpasswd_pbkdf2_program}
+ complete -F _grub_mkpasswd_pbkdf2 -o filenames ${__grub_mkpasswd_pbkdf2_program}
 unset __grub_mkpasswd_pbkdf2_program
 
 
@@ -462,7 +462,7 @@
 #
 # grub-script-check
 #
-_grub_script-check () {
+_grub_script_check () {
     local cur
 
     COMPREPLY=()
@@ -477,7 +477,7 @@
 }
 __grub_script_check_program=$( echo grub-script-check | sed "@program_transform_name@" )
 have ${__grub_script_check_program} && \
- complete -F _grub_script-check -o filenames ${__grub_script_check_program}
+ complete -F _grub_script_check -o filenames ${__grub_script_check_program}
 
 
 # Local variables:

Reply via email to