What is the difference between av_store and av_push?  What is the
appropriate use of each?  I am asking because I get an error when my perl
cgi trys to work with the one array returned by the extension and not by
the others.  The differences I can see are sub1 uses the SV** returned
from av_fetch and uses av_store to move it in the same array(this works).
The other sub that works uses newSVpvf and av_push to fill a new array and
returns a pointer to that array.  The sub that doesn't work uses the SV**
returned from av_fetch but uses av_push because I am adding it to a new
array that is to be returned by reference same as the other one.  The
error I get is

Bizarre copy of ARRAY in aassign at test_gala_query line 3958, <STDIN>
line 14. Segmentation Fault

line 3958 is
my(@ranges) = splice(@$rangref, (($page_num * $page_size) - $page_size), $page_size);

One more thing if I just print the contents of the array instead of using
splice on it, it looks fine and I get no error.

Any ideas what I am doing wrong?
Belinda


Reply via email to