summaryrefslogtreecommitdiffstats
path: root/lib/soap/parser.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/soap/parser.rb')
-rw-r--r--lib/soap/parser.rb8
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/soap/parser.rb b/lib/soap/parser.rb
index 457d681d3..14704a6d9 100644
--- a/lib/soap/parser.rb
+++ b/lib/soap/parser.rb
@@ -117,7 +117,13 @@ public
encodingstyle = find_encodingstyle(ns, attrs)
# Children's encodingstyle is derived from its parent.
- encodingstyle ||= parent_encodingstyle || @default_encodingstyle
+ if encodingstyle.nil?
+ if parent.node.is_a?(SOAPHeader)
+ encodingstyle = LiteralNamespace
+ else
+ encodingstyle = parent_encodingstyle || @default_encodingstyle
+ end
+ end
node = decode_tag(ns, name, attrs, parent, encodingstyle)