* fixed compilerwidestring concatenation

git-svn-id: trunk@1876 -
This commit is contained in:
florian 2005-12-04 18:29:07 +00:00
parent 3a8cd257b4
commit 0907a1ef80
3 changed files with 5 additions and 4 deletions

View File

@ -558,9 +558,9 @@ implementation
destructor tstringconstnode.destroy;
begin
if st_type=st_widestring then
donewidestring(pcompilerwidestring(value_str))
donewidestring(pcompilerwidestring(value_str))
else
ansistringdispose(value_str,len);
ansistringdispose(value_str,len);
inherited destroy;
end;

View File

@ -97,7 +97,7 @@ implementation
begin
{ update the codegenerror boolean with the previous result of this node }
if (nf_error in p.flags) then
codegenerror:=true;
codegenerror:=true;
end;
end;

View File

@ -104,6 +104,7 @@ unit widestr;
reallocmem(r^.data,sizeof(tcompilerwidechar)*l)
else
getmem(r^.data,sizeof(tcompilerwidechar)*l);
r^.maxlen:=l;
end;
procedure concatwidestringchar(r : pcompilerwidestring;c : tcompilerwidechar);
@ -118,8 +119,8 @@ unit widestr;
procedure concatwidestrings(s1,s2 : pcompilerwidestring);
begin
setlengthwidestring(s1,s1^.len+s2^.len);
inc(s1^.len,s2^.len);
move(s2^.data^,s1^.data[s1^.len],s2^.len*sizeof(tcompilerwidechar));
inc(s1^.len,s2^.len);
end;
procedure copywidestring(s,d : pcompilerwidestring);