title: Indy's TIdMultipartFormDataStream weird behavior on Delphi XE5/Android platform
body: <p>I'm trying to use Indy's TIdHTTP component to send data to a website.
  The code works perfectly on Windows platform but unfortunately it behaves strangely on Android platform. The problem occurs when I use TIdMultipartFormDataStream to send POST parameters.</p>
  
  <p>On Android platform TIdMultipartFormDataStream behaves strangely and this what happens:
  Suppose your POST data is myparam=myvalue where "myparam" is parameter name and "myvalue" is the parametervalue. </p>
  
  <p>The parameter values gets changed to {FIRST CHARACTER REMOVED}yvalue{NULL CHARACTER} so the final output will look like this yvalue\x00 where \x00 is a null character.</p>
  
  <p>I can replace TIdMultipartFormDataStream with TStringList and I won't face such issue but I prefer to use TIdMultipartFormDataStream because it enables me to upload files + send POST data at the same time.</p>
  
  <p>Sample code:</p>
  
  <pre><code>procedure HTTPPOST;
  var
    HTTP: TIdHTTP;
    POSTData: TIdMultipartFormDataStream;
  begin
    HTTP := TIdHTTP.Create(nil);
    POSTData := TIdMultipartFormDataStream.Create;
  
    try
      POSTData.AddFile('myfile','file.txt'); // works
      POSTData.AddFormField('username', 'user1'); // On Android the value gets changed to ser1\x00 where \x00 = Null character
  
      HTTP.Post('http://www.example.com', POSTData)
  
    finally
      POSTData.Free;
    end;
  end;
  </code></pre>
  
  <p><strong>Note:</strong> the code was tested using Delphi XE5 and Delphi XE5 Update 1</p>