On Fri, May 15, 2009 at 2:17 AM, Hoyt Koepke <[email protected]> wrote: > So the signature of your function has iovec **? If it does, what that > means is that it can modify the value of hdr_names nad hdr_values in > your code, as you are giving pointers to them. If so, try checking > whether they change when you call the function. On the other hand, if > the function signature is iovec*, then you are doing it wrong and need > to remove the &. That would definitely call a segfault. >
The sig is: struct iovec *hdr_names[], struct iovec *hdr_values[] When I call the function with a single header name/value, that is, arrays of a single iovec each, then it works. printing the addresses of pointers and the strings they point to does not indicate that the function changes anything. When I call with two iovecs in the arrays, that is two header name/values.... then the function call sigfaults and I can see if the function did attaempt to change anything i passed. I tried forcing things by changing the function signature to say "struct iovec *hdr_values", and then removing the & when I call, it sigfaults just the same. > BTW, do you get any warnings during compilation? > It does not seem like I have any warning regarding the lines of code surrounding this function call... Thanks a lot. Mohamed. _______________________________________________ Cython-dev mailing list [email protected] http://codespeak.net/mailman/listinfo/cython-dev
