summaryrefslogtreecommitdiffstats
path: root/lib/puppet/parser
diff options
context:
space:
mode:
authorJesse Wolfe <jes5199@gmail.com>2009-10-16 23:45:02 -0700
committerJames Turnbull <james@lovedthanlost.net>2009-10-19 19:47:07 +1100
commitf59f8054dc0d1c86169b954fab96df650f38dd23 (patch)
treea2de2de0a2c784b6b889b038724a9a05858ee1be /lib/puppet/parser
parent6ba122f62bf22c955a6923604a46a8ab22d8770b (diff)
downloadpuppet-f59f8054dc0d1c86169b954fab96df650f38dd23.tar.gz
puppet-f59f8054dc0d1c86169b954fab96df650f38dd23.tar.xz
puppet-f59f8054dc0d1c86169b954fab96df650f38dd23.zip
Bug #1900 Parsing of quoted $ in stdin
When code comes in via STDIN or --code , Puppet::Util::Settings interpolates $values in the code, which is probably never the intended behavior. This is the least destructive fix I could think of: have Puppet::Parser::Interpreter ask for the uninterpolated value. More general fixes could be to: a) Add an escape character to Settings's interpolator, and escape STDIN b) Add a mechanism to Settings to mark some values as uninterpolated Signed-off-by: Jesse Wolfe <jes5199@gmail.com>
Diffstat (limited to 'lib/puppet/parser')
-rw-r--r--lib/puppet/parser/interpreter.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/puppet/parser/interpreter.rb b/lib/puppet/parser/interpreter.rb
index 2e8924090..bc0ae4fdf 100644
--- a/lib/puppet/parser/interpreter.rb
+++ b/lib/puppet/parser/interpreter.rb
@@ -62,7 +62,7 @@ class Puppet::Parser::Interpreter
def create_parser(environment)
begin
parser = Puppet::Parser::Parser.new(:environment => environment)
- if code = Puppet.settings.value(:code, environment) and code != ""
+ if code = Puppet.settings.uninterpolated_value(:code, environment) and code != ""
parser.string = code
else
file = Puppet.settings.value(:manifest, environment)