Branch Coverage

Pro.xs
Criterion Covered Total %
branch 154 384 40.1


line true false branch
79 0 209 PUSHMARK(SP);
86 209 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
0 209 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
0 209 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
209 0 if (SvTRUE(ERRSV))
0 209 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 209 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
0 0 if (SvTRUE(ERRSV))
89 0 0 printf ("Pro.xs: param tree code reference exited abnormally - %s\n", SvPV(ERRSV, n_a));
0 0 printf ("Pro.xs: param tree code reference exited abnormally - %s\n", SvPV(ERRSV, n_a));
0 0 printf ("Pro.xs: param tree code reference exited abnormally - %s\n", SvPV(ERRSV, n_a));
0 0 printf ("Pro.xs: param tree code reference exited abnormally - %s\n", SvPV(ERRSV, n_a));
0 0 printf ("Pro.xs: param tree code reference exited abnormally - %s\n", SvPV(ERRSV, n_a));
94 0 209 if (count != 1)
112 0 731 if (valptr==NULL) return retval;
115 12 719 SvGETMAGIC(SVval);
0 12 SvGETMAGIC(SVval);
116 0 731 if (SvOK(SVval) && SvROK(SVval)) {
0 0 if (SvOK(SVval) && SvROK(SVval)) {
0 0 if (SvOK(SVval) && SvROK(SVval)) {
12 719 if (SvOK(SVval) && SvROK(SVval)) {
117 7 5 if (SvTYPE(SvRV(SVval))==SVt_PVCV) {
119 0 5 } else if(SvTYPE(SvRV(SVval))==SVt_PV) {
122 0 12 SvGETMAGIC(SVval);
0 0 SvGETMAGIC(SVval);
124 0 731 if (!SvOK(SVval)) return retval;
0 0 if (!SvOK(SVval)) return retval;
0 0 if (!SvOK(SVval)) return retval;
126 0 731 if (((struct perl_callback_state*) callback_state)->force_untaint && SVval && SvTAINTED(SVval))
0 0 if (((struct perl_callback_state*) callback_state)->force_untaint && SVval && SvTAINTED(SVval))
0 0 if (((struct perl_callback_state*) callback_state)->force_untaint && SVval && SvTAINTED(SVval))
0 0 if (((struct perl_callback_state*) callback_state)->force_untaint && SVval && SvTAINTED(SVval))
129 672 59 retval.begin=SvPV(SVval, len);
138 0 304 if (valptr==NULL) return 0;
140 208 96 if (SvROK(SVval)) {
141 202 6 if ((SvTYPE(SvRV(SVval)) == SVt_PVCV)) {
145 6 0 if ((SvTYPE(SvRV(SVval)) == SVt_PVAV)
146 0 6 && (av_len((AV *)SvRV(SVval))<0)) {
152 0 298 SvGETMAGIC(SVval);
0 0 SvGETMAGIC(SVval);
153 298 0 if(SvTRUE(SVval)) return 1;
0 298 if(SvTRUE(SVval)) return 1;
0 298 if(SvTRUE(SVval)) return 1;
0 0 if(SvTRUE(SVval)) return 1;
0 0 if(SvTRUE(SVval)) return 1;
90 208 if(SvTRUE(SVval)) return 1;
90 0 if(SvTRUE(SVval)) return 1;
0 90 if(SvTRUE(SVval)) return 1;
0 0 if(SvTRUE(SVval)) return 1;
0 0 if(SvTRUE(SVval)) return 1;
208 0 if(SvTRUE(SVval)) return 1;
208 0 if(SvTRUE(SVval)) return 1;
109 99 if(SvTRUE(SVval)) return 1;
0 109 if(SvTRUE(SVval)) return 1;
0 0 if(SvTRUE(SVval)) return 1;
189 109 if(SvTRUE(SVval)) return 1;
161 0 75 SvGETMAGIC(val);
0 0 SvGETMAGIC(val);
162 75 0 if ((!SvROK(val)) || (SvTYPE(SvRV(val)) != SVt_PVAV)) return 0;
0 75 if ((!SvROK(val)) || (SvTYPE(SvRV(val)) != SVt_PVAV)) return 0;
169 0 75 SvGETMAGIC((SV *)loops_AV);
0 0 SvGETMAGIC((SV *)loops_AV);
178 0 187 if (arrayvalptr==NULL) return NULL;
180 2 185 SvGETMAGIC(val);
0 2 SvGETMAGIC(val);
181 187 0 if ((!SvROK(val)) || (SvTYPE(SvRV(val)) != SVt_PVHV)) {
0 187 if ((!SvROK(val)) || (SvTYPE(SvRV(val)) != SVt_PVHV)) {
198 0 0 if (prevfilename) {
206 0 0 PUSHMARK(SP) ;
207 0 0 XPUSHs((SV*)PerlSelfHTMLTemplatePro);
208 0 0 XPUSHs(perlretval);
209 0 0 XPUSHs(perlprevfile);
213 0 0 if (count != 1) croak("Big troublen") ;
216 0 0 if (SvOK(perlretval)) {
0 0 if (SvOK(perlretval)) {
0 0 if (SvOK(perlretval)) {
217 0 0 filepath = SvPV(perlretval, len);
224 0 0 FREETMPS ;
240 0 9 PUSHMARK(SP) ;
241 0 9 XPUSHs(((struct perl_callback_state*)callback_state)->perl_obj_self_ptr);
242 0 9 XPUSHs(perlretval);
246 0 9 if (count != 1) croak("Big troublen") ;
249 0 9 if (SvOK(templateptr) && SvROK(templateptr)) {
0 0 if (SvOK(templateptr) && SvROK(templateptr)) {
0 0 if (SvOK(templateptr) && SvROK(templateptr)) {
9 0 if (SvOK(templateptr) && SvROK(templateptr)) {
250 9 0 tmpl.begin = SvPV(SvRV(templateptr), len);
258 9 0 FREETMPS ;
281 70 0 if (NULL!=arglist) {
326 0 70 if (hashvalptr==NULL) {
330 70 0 } else if (! SvROK(*((SV**) hashvalptr)) || (SvTYPE(SvRV(*((SV**) hashvalptr))) != SVt_PVCV)) {
0 70 } else if (! SvROK(*((SV**) hashvalptr)) || (SvTYPE(SvRV(*((SV**) hashvalptr))) != SVt_PVCV)) {
339 0 70 PUSHMARK(SP) ;
340 88 70 for (i=0;i<=arrlen;i++) {
342 88 0 if (arrval) XPUSHs(*arrval);
0 88 if (arrval) XPUSHs(*arrval);
348 70 0 if (numretval) {
350 0 70 SvGETMAGIC(svretval);
0 0 SvGETMAGIC(svretval);
351 4 66 if (SvOK(svretval)) {
4 0 if (SvOK(svretval)) {
0 4 if (SvOK(svretval)) {
352 1 65 if (SvIOK(svretval)) {
353 1 0 tmplpro_set_expr_as_int64(exprval,SvIV(svretval));
354 0 65 } else if (SvNOK(svretval)) {
355 0 0 tmplpro_set_expr_as_double(exprval,SvNV(svretval));
358 65 0 strval =SvPV(svretval, len);
367 0 4 if (debuglevel>1) warn ("user defined function returned undef\n");
370 0 0 if (debuglevel) warn ("user defined function returned nothing\n");
373 70 0 FREETMPS ;
384 827 3214 if (hashvalptr==NULL) return;
385 3214 0 setfunc(param,SvIV(*hashvalptr));
391 449 898 if (hashvalptr==NULL) return 0;
392 898 0 return SvIV(*hashvalptr);
401 896 451 if (hashvalptr==NULL) return retval;
402 216 235 if (SvROK(*hashvalptr)) {
404 216 0 begin=SvPV(SvRV(*hashvalptr),len);
406 0 235 if (! SvPOK(*hashvalptr)) return retval;
407 235 0 begin=SvPV(*hashvalptr,len);
424 449 0 if (valptr!=NULL && SvROK(*valptr) && (SvTYPE(SvRV(*valptr)) == SVt_PVAV) ) {
449 0 if (valptr!=NULL && SvROK(*valptr) && (SvTYPE(SvRV(*valptr)) == SVt_PVAV) ) {
449 0 if (valptr!=NULL && SvROK(*valptr) && (SvTYPE(SvRV(*valptr)) == SVt_PVAV) ) {
427 390 59 if (amax<0) {
432 59 0 path = (char**) SvGROW(store, sizeof(char*)*(amax+2));
0 59 path = (char**) SvGROW(store, sizeof(char*)*(amax+2));
436 68 59 for (i=0; i<=amax;i++) {
438 68 0 if (valptr!=NULL) {
439 68 0 *j=SvPV_nolen(*valptr);
493 449 0 if ((!SvROK(PerlSelfPtr)) || (SvTYPE(SvRV(PerlSelfPtr)) != SVt_PVHV))
0 449 if ((!SvROK(PerlSelfPtr)) || (SvTYPE(SvRV(PerlSelfPtr)) != SVt_PVHV))
504 216 233 if (filename.begin==NULL && scalarref.begin==NULL) {
0 216 if (filename.begin==NULL && scalarref.begin==NULL) {
510 449 0 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVHV))
449 0 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVHV))
0 449 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVHV))
518 449 0 if (hashvalptr!=NULL && SvROK(*hashvalptr) && (SvTYPE(SvRV(*hashvalptr)) == SVt_PVAV)) {
449 0 if (hashvalptr!=NULL && SvROK(*hashvalptr) && (SvTYPE(SvRV(*hashvalptr)) == SVt_PVAV)) {
449 0 if (hashvalptr!=NULL && SvROK(*hashvalptr) && (SvTYPE(SvRV(*hashvalptr)) == SVt_PVAV)) {
522 2 449 while (i>=0) {
524 2 0 if (arrayvalptr!=NULL && SvROK(*arrayvalptr))
2 0 if (arrayvalptr!=NULL && SvROK(*arrayvalptr))
531 449 0 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVHV))
449 0 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVHV))
0 449 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVHV))
538 449 0 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVAV))
449 0 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVAV))
0 449 if (!hashvalptr || !SvROK(*hashvalptr) || (SvTYPE(SvRV(*hashvalptr)) != SVt_PVAV))
540 5 444 if (av_len((AV*)SvRV(*hashvalptr))>=0) tmplpro_set_option_filters(param, 1);
543 375 74 if (!get_integer_from_hash(aTHX_ SelfHash,"case_sensitive")) {
560 2 447 if (tmpstring && *tmpstring) {
2 0 if (tmpstring && *tmpstring) {
585 0 449 if (get_integer_from_hash(aTHX_ SelfHash,"__use_perl_find_file")) {
633 0 71 if (debuglevel>0) warn ("Pro.xs: entered exec_tmpl self=%p",self_ptr);
635 0 71 SvGETMAGIC(possible_output);
0 0 SvGETMAGIC(possible_output);
636 0 71 if (!SvOK(possible_output)) {
0 0 if (!SvOK(possible_output)) {
0 0 if (!SvOK(possible_output)) {
640 0 71 if (output_stream == NULL){
650 0 71 if (RETVAL!=0) warn ("Pro.xs: non-zero exit code %d",RETVAL);
665 0 378 if (debuglevel>0) warn ("Pro.xs: entered exec_tmpl_string self=%p",self_ptr);
672 0 378 if (retstate!=0) warn ("Pro.xs: non-zero exit code %d",retstate);
692 0 0 if (retstate!=0) warn ("Pro.xs: non-zero exit code %d",retstate);