my 2 cents on this :

If you feed Thttpcli.url with a invalid url no urldecode is executed. To 
keep consistency in behavior I would not just do an automatic urldecode on a 

The main issue is however that with the followrelocate set it will generate 
an error while a browser will not.

To allow a programmer to make a decision on an invalid relocate url the 
component must provide an option to do so.

I therefore see 3 possible solutions.

1) A new property AutoDecodeRelocationUrl  type Boolean. Default FALSE. If 
set TRUE will execute a urldecode on the relocate AND possible on the 
httpcli.url also. But if it include the later option as well the name maybe 
should be AutoUrlDecode.

2) A new event OnRelocationRecieved(data : String; Accept : Boolean) to be 
called around line 2675 (procedure getheaderlinenext)
co=32&js=1.4&sr=1024x768&re= }
                FLocationFlag := TRUE;
                if Proxy <> '' then begin
something like
co=32&js=1.4&sr=1024x768&re= }

   baccept := true;
   if Assigned(FOnRelocationRecieved) then 
   If baccept then

                FLocationFlag := TRUE;
                if Proxy <> '' then begin
This would allow the programmer to temporary overrule the FFollowRelocation 
setting on demand but also allow adjustment of the received header data. I 
think that would enhance flexibility.

3) A change to the procedure getheaderlinenext to just change the received 
data. In my opion not the best option as it can cause confusion about what 
is really received.

Feedback appreciated :>>

To unsubscribe or change your settings for TWSocket mailing list
please goto
Visit our website at

Reply via email to