Jamie wrote:

> Hi All,
> 
> Sablotron looks extremely promising, and as a command line utility it's
> already useful, but I'm having some problems getting it to work under apache
> with mod_perl.
> 
> The problem is it gets a segfault when it runs, I think it's related to the
> SablotFree(foo); routine. 
> 
> I'm not a native C coder, but I did find something interesting.
> 
> This doesn't crash under mod_perl, but it doesn't work either. :-( The 
> fprintf(stderr,"Result: %s\n",result); line prints something completely
> different (in the apache error log file) under mod_perl then it does under 
> regular perl. 
> 
> It prints some kind of binary data, leading me to believe it's a memory 
> allocation mix-up of some kind, particular to mod_perl.
> 
> Any idea on whats happening?
> 
> Thanks
> 
> Jamie
> 
> ----------| Sablotron.xs |-------------------
> 
> int
> SablotProcessStrings(sheet,input,result)
>       char *          sheet
>       char *          input
>       char *          result
>       PREINIT:
>       char anything;         // ???
>       char *foo = &anything;
>       CODE:
>         RETVAL = SablotProcessStrings(sheet, input, &foo);
>       perror("We're here");
>       result = foo;
>       OUTPUT:
>       result
>       RETVAL
>       CLEANUP:
>       perror("Just before cleanup");
>       fprintf(stderr,"Result: %s\n",result);
>       SablotFree(foo);
>       perror("We're After cleanup");
> 
> 
> 
> 
> 
> 
> 



--
Pavel Hlavnicka
Ginger Alliance Ltd.
Prague; Czech Republic


Reply via email to