← Back to team overview

touch-packages team mailing list archive

[Bug 139097] Re: dash variable expansion error using local, readonly, and export

 

A comment about Importance: Low.

It seems that this old bug is responsible for breaking the boot process
of clients on Linux Terminal Servers (LTSP) running Lubuntu 14.04.  See
http://bugs.launchpad.net/ubuntu/+source/ltsp/+bug/1330252

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to dash in Ubuntu.
https://bugs.launchpad.net/bugs/139097

Title:
  dash variable expansion error using local, readonly, and export

Status in “dash” package in Ubuntu:
  Confirmed

Bug description:
  <pre>
  Binary package hint: dash

  [Edited May 2010]
  True for all dash up to at least May 2010.

  Bug in variable expansion (incorrect word-splitting) using an assignment
  with "local", "readonly", or "export in dash:

  $ x='1 2 3'
  $ y=$x                                # this works fine
  $ echo "$y"
  1 2 3

  $ local y=$x                          # this fails due to dash bug
  local: 2: bad variable name
  $ echo "$y"
  1

  $ readonly y=$x                        # this fails due to dash bug
  readonly: 2: bad variable name

  $ export y=$x                          # this fails due to dash bug
  export: 2: bad variable name

  The same use of assignment using "local", "readonly" and "export" all work
  fine in bash:

  bash-3.2$ x='1 2 3'
  bash-3.2$ y=$x
  bash-3.2$ echo "$y"
  1 2 3
  bash-3.2$ local y=$x
  bash: local: can only be used in a function
  bash-3.2$ foo () {
  > local y=$x
  > echo "$y"
  > }
  bash-3.2$ foo
  1 2 3

  bash-3.2$ readonly y=$x                 # works fine

  bash-3.2$ export y=$x                   # works fine

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dash/+bug/139097/+subscriptions