X-Git-Url: http://git.indexdata.com/?p=simpleserver-moved-to-github.git;a=blobdiff_plain;f=SimpleServer.xs;h=e3240091a8367a894f204a209756bc9f324d89ee;hp=623949c0a91cf34d2c54293800c5ab4fb0c02ef3;hb=506e20dece3deac2c8787e4a1770641f2ffae40c;hpb=cd9cb3988b41156d3c1eb159f0e8d339d624c45d diff --git a/SimpleServer.xs b/SimpleServer.xs index 623949c..e324009 100644 --- a/SimpleServer.xs +++ b/SimpleServer.xs @@ -1,5 +1,5 @@ /* - * $Id: SimpleServer.xs,v 1.29 2004-06-05 22:18:09 adam Exp $ + * $Id: SimpleServer.xs,v 1.31 2004-06-06 09:07:18 adam Exp $ * ---------------------------------------------------------------------- * * Copyright (c) 2000-2004, Index Data. @@ -104,17 +104,19 @@ CV * simpleserver_sv2cv(SV *handler) { /* debugging routine to check for destruction of Perl interpreters */ #if 1 -int tst_clones(void) +void tst_clones(void) { int i; PerlInterpreter *parent = PERL_GET_CONTEXT; - for (i = 0; i<500; i++) + for (i = 0; i<5000; i++) { PerlInterpreter *perl_interp; + PERL_SET_CONTEXT(parent); PL_perl_destruct_level = 2; - perl_interp = perl_clone(parent, 0); + perl_interp = perl_clone(parent, CLONEf_CLONE_HOST); PL_perl_destruct_level = 2; + PERL_SET_CONTEXT(perl_interp); perl_destruct(perl_interp); perl_free(perl_interp); } @@ -136,7 +138,7 @@ int simpleserver_clone(void) { if (!current) { PerlInterpreter *perl_interp; PERL_SET_CONTEXT( root_perl_context ); - perl_interp = perl_clone(root_perl_context, 0); + perl_interp = perl_clone(root_perl_context, CLONEf_CLONE_HOST); PERL_SET_CONTEXT( perl_interp ); } } @@ -564,7 +566,6 @@ int bend_sort(void *handle, bend_sort_rr *rr) temp = hv_fetch(href, "STATUS", 6, 1); status = newSVsv(*temp); - PUTBACK; FREETMPS; LEAVE; @@ -595,11 +596,9 @@ int bend_search(void *handle, bend_search_rr *rr) STRLEN len; int i; char **basenames; - int n; WRBUF query; char *ptr; SV *point; - SV *ODR_point; Zfront_handle *zhandle = (Zfront_handle *)handle; CV* handler_cv = 0; @@ -1045,7 +1044,6 @@ int bend_scan(void *handle, bend_scan_rr *rr) char *ODR_errstr; STRLEN len; int term_len; - SV *term_tmp; SV *entries_ref; Zfront_handle *zhandle = (Zfront_handle *)handle; CV* handler_cv = 0; @@ -1171,7 +1169,6 @@ bend_initresult *bend_init(bend_initrequest *q) SV *handle; HV *href; SV **temp; - SV *status; ENTER; SAVETMPS; @@ -1280,7 +1277,6 @@ void bend_close(void *handle) { HV *href; Zfront_handle *zhandle = (Zfront_handle *)handle; - SV **temp; CV* handler_cv = 0; int stop_flag = 0; dSP;