diff --git a/wst/trunk/base_soap_formatter.pas b/wst/trunk/base_soap_formatter.pas index 58117a271..c7f2aeeed 100644 --- a/wst/trunk/base_soap_formatter.pas +++ b/wst/trunk/base_soap_formatter.pas @@ -2277,11 +2277,16 @@ function TSOAPBaseFormatter.ReadBuffer(const AName : string; out AResBuffer : st Var locElt : TDOMNode; namespaceShortName, strNodeName : string; + i : Integer; begin strNodeName := AName; if ( Style = Document ) then begin namespaceShortName := FindAttributeByValueInScope(StackTop().NameSpace); - namespaceShortName := Copy(namespaceShortName,AnsiPos(':',namespaceShortName) + 1,MaxInt); + i := Pos(':',namespaceShortName); + if ( i > 0 ) then + namespaceShortName := Copy(namespaceShortName,i + 1,MaxInt) + else + namespaceShortName := ''; if not IsStrEmpty(namespaceShortName) then strNodeName := namespaceShortName + ':' + strNodeName; end;