File Coverage

blib/lib/Devel/vscode.pm
Criterion Covered Total %
statement 16 30 53.3
branch 0 10 0.0
condition n/a
subroutine 7 9 77.7
pod n/a
total 23 49 46.9


line stmt bran cond sub pod time code
1             package Devel::vscode;
2 1     1   54655 use 5.008;
  1         4  
3 1     1   5 use strict;
  1         1  
  1         17  
4 1     1   4 use warnings;
  1         2  
  1         30  
5 1     1   5 no strict;
  1         1  
  1         22  
6 1     1   9 no warnings;
  1         2  
  1         242  
7              
8             our $VERSION = '0.02';
9              
10             our $BREAK_AFTER_FORK = 1;
11              
12             sub import {
13 0     0     my ($class, @args) = @_;
14              
15 0           for (@args) {
16              
17 0 0         if (/^fork=break$/) {
    0          
18              
19 0           $BREAK_AFTER_FORK = 1;
20              
21             } elsif (/^fork=$/) {
22              
23 0           $BREAK_AFTER_FORK = 0;
24              
25             } else {
26              
27 0           die "Unknown option $_";
28              
29             }
30              
31             }
32              
33 0           return;
34             }
35              
36             sub _fork {
37              
38 0 0   0     if ($BREAK_AFTER_FORK) {
39              
40 0           my $pid = &CORE::fork;
41              
42 0 0         return $pid if not defined $pid;
43 0 0         return $pid if $pid;
44              
45 0           $DB::single = 2;
46              
47 0           return $pid;
48              
49             } else {
50              
51 0           &CORE::fork;
52              
53             }
54              
55             };
56              
57             BEGIN {
58 1     1   1227 require "perl5db.pl";
59             }
60              
61             BEGIN {
62 1     1   49883 *CORE::GLOBAL::fork = \&_fork;
63             }
64              
65             1;
66              
67             __END__