Unit test to verify whether Slic3r would hang when croaking from
a C++ exception handler. This is an unfortunate error in some Strawberry Perl distributions.
This commit is contained in:
parent
e9e55e7ac3
commit
aac968162b
@ -166,6 +166,7 @@ t/18_motionplanner.t
|
||||
t/19_model.t
|
||||
t/20_print.t
|
||||
t/21_gcode.t
|
||||
t/22_exception.t
|
||||
xsp/BoundingBox.xsp
|
||||
xsp/BridgeDetector.xsp
|
||||
xsp/Clipper.xsp
|
||||
|
16
xs/t/22_exception.t
Normal file
16
xs/t/22_exception.t
Normal file
@ -0,0 +1,16 @@
|
||||
#!/usr/bin/perl
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use Slic3r::XS;
|
||||
use Test::More tests => 1;
|
||||
|
||||
{
|
||||
eval {
|
||||
Slic3r::xspp_test_croak_hangs_on_strawberry();
|
||||
};
|
||||
is $@, "xspp_test_croak_hangs_on_strawberry: exception catched\n", 'croak from inside a C++ exception delivered';
|
||||
}
|
||||
|
||||
__END__
|
@ -28,4 +28,12 @@ FORK_NAME()
|
||||
RETVAL = newSVpv(SLIC3R_FORK_NAME, 0);
|
||||
OUTPUT: RETVAL
|
||||
|
||||
void
|
||||
xspp_test_croak_hangs_on_strawberry()
|
||||
CODE:
|
||||
try {
|
||||
throw 1;
|
||||
} catch (...) {
|
||||
croak("xspp_test_croak_hangs_on_strawberry: exception catched\n");
|
||||
}
|
||||
%}
|
Loading…
Reference in New Issue
Block a user