diff options
| author | Josh Andler <scislac@gmail.com> | 2009-11-08 01:09:47 +0000 |
|---|---|---|
| committer | scislac <scislac@users.sourceforge.net> | 2009-11-08 01:09:47 +0000 |
| commit | 02415463cf767b7fe490e773971d65df12f55752 (patch) | |
| tree | 646cc4a2446f74e54ac4eade36f38e02d938f6bd | |
| parent | patch by Krzysztof for 459811 (diff) | |
| download | inkscape-02415463cf767b7fe490e773971d65df12f55752.tar.gz inkscape-02415463cf767b7fe490e773971d65df12f55752.zip | |
Fix for crash 409043
(bzr r8823)
| -rw-r--r-- | src/box3d-side.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/box3d-side.cpp b/src/box3d-side.cpp index 241279100..69bae53d9 100644 --- a/src/box3d-side.cpp +++ b/src/box3d-side.cpp @@ -225,6 +225,16 @@ box3d_side_set_shape (SPShape *shape) box3d_side_compute_corner_ids(side, corners); SPCurve *c = new SPCurve(); + + if (!box3d_get_corner_screen(box, corners[0]).isFinite() || + !box3d_get_corner_screen(box, corners[1]).isFinite() || + !box3d_get_corner_screen(box, corners[2]).isFinite() || + !box3d_get_corner_screen(box, corners[3]).isFinite() ) + { + g_warning ("Trying to draw a 3D box side with invalid coordinates.\n"); + return; + } + c->moveto(box3d_get_corner_screen(box, corners[0])); c->lineto(box3d_get_corner_screen(box, corners[1])); c->lineto(box3d_get_corner_screen(box, corners[2])); |
