alank2 5 Posted Friday at 08:33 PM This is C++ Builder, but it is using System.Net.Mime.pas which contains TMultipartFormData. Building with 11.3 works fine no errors, but building with 12.3 will cause a crash when I try to delete a pointer to TMultipartFormData. I added System.Net.Mime.pas and stepped into it and it calls: If I step over "FStream.Free" it crashes. If I step into it: If I step over Destroy it crashes. If I step into it, it goes into assembly: I can see a lot of differences between the the 22.0 and 23.0 versions of System.Net.Mime.pas. Any ideas on how to I can resolve this with 12.3? Share this post Link to post
Brian Evans 113 Posted Friday at 09:13 PM Look at the crash details to get hints as to what is going on. Note you didn't post any and "crash" is very little to go on. Guessing it is the CALL that crashes due to the object reference being no longer valid. Perhaps owned objects are getting freed automatically or earlier than before. Not sure which code is yours (if any) so hard to tell. Share this post Link to post
Remy Lebeau 1554 Posted Saturday at 01:45 AM (edited) @alank2 What you describe implies that either 1) TMultipartFormData is trying to free an invalid FStream object, or 2) you are trying to free an invalid TMultipartFormData object. Unfortunately, there is not enough detail provided to help you. You will have to debug the code for yourself, and double check the user of the pointers involved. Edited Saturday at 01:46 AM by Remy Lebeau Share this post Link to post
alank2 5 Posted 5 hours ago If I step with F7 into everything it eventually comes to this point: If I remark out the one line that uses TMultipartFormData, then the issue does not happen: mfd->AddStream(name, send, value); Share this post Link to post
alank2 5 Posted 5 hours ago It looks like there was a change to the AddStream - 11.3 left, 12.3 right: Share this post Link to post
alank2 5 Posted 4 hours ago If I call it with AOwnsStream=false, it does not crash. Share this post Link to post