Le 23/11/2014 22:07, T Lee Davidson a écrit : > Okay, I've done more testing related to the noise I accidentally sent to > the list yesterday. > > Attempting to enumerate through HttpClient.Headers with For Each causes > a SegFault 11 under certain conditions. > > In the attached project, there is a procedure that traverses through a > list of three URLs from a GridView and does HttpClient.Get on each one. > > If HttpClient.Headers for each URL is enumerated with Headers[iIndex], I > can run through the list of URLs multiple times all day long. But, if I > enumerate the Headers array with For Each, the application SegFaults at > the second execution of the procedure. > > When using Headers[iIndex], Headers.Count is correct. > > But, when using For Each, URL[1].Headers.Count is obviously > URL[0].Headers.Count plus URL[1].Headers.Count. And, actually printing > out the headers shows that URL[1].Headers is the URL[0].Headers with > URL[1].Headers appended. > > Interestingly, the Headers for the third URL are correct no matter which > enumeration method is used. And, the application does not SegFault when > attempting to enumerate the Headers (with For Each) for the third URL on > the first run. Only after the procedure is re-entered the second time > does the app SegFault. > > > How to reproduce: > > Set "Actually Print Headers to Console" to your preference. > > A. > 1. Leave "Enumerate Response Headers With" set to "Headers[iIndex]". > 2. Click "Get Response Status Codes" as many times as you wish to show > that enumerating with Headers[iIndex] does not SegFault. > > B. > 1. Set "Enumerate Response Headers With" to "For Each Headers". > 2. Click "Get Response Status Codes" twice. (>>SegFault) > > > One last note: I stumbled across this while trying to determine why > HttpClient.Code sometimes returned "0", and IIRC, I was enumerating with > For Each at the time. > > > Now just for clarification, is enumerating HttpClient.Headers with For > Each something I should not be doing? Have I done something else wrong? > Or is this actually a bug? >
I will look at it. But if you have a segfault, this is a bug, whatever the reason. You are not doing anything wrong, the interpret should never crash, only raising errors. If the crash is a library bug, I can't do nothing, but it seems to not be the case there. Regards, -- Benoît Minisini ------------------------------------------------------------------------------ Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk _______________________________________________ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user