Code

Filter effects dialog:
[inkscape.git] / src / gradient-chemistry.cpp
index 281704eea573078c47652f5d2b3c8c3b57192ef9..fce26435c6b75a6037147b3dda2d888c35e98f8c 100644 (file)
@@ -276,7 +276,9 @@ sp_gradient_reset_to_userspace (SPGradient *gr, SPItem *item)
     sp_document_ensure_up_to_date(SP_OBJECT_DOCUMENT(item));
     NR::Maybe<NR::Rect> bbox = item->getBounds(NR::identity()); // we need "true" bbox without item_i2d_affine
 
-    g_assert( bbox && !bbox->isEmpty() );
+    if ( !bbox || bbox->isEmpty() )
+        return gr;
+
     NR::Coord const width = bbox->dimensions()[NR::X];
     NR::Coord const height = bbox->dimensions()[NR::Y];
 
@@ -911,7 +913,7 @@ sp_item_gradient_set_coords (SPItem *item, guint point_type, guint point_i, NR::
                 double offset = get_offset_between_points (p, start, end);
                 SPGradient *vector = sp_gradient_get_forked_vector_if_necessary (rg, false);
                 sp_gradient_ensure_vector(rg);
-                rg->vector.stops.at(point_i).offset = offset; //crash
+                rg->vector.stops.at(point_i).offset = offset; 
                 SPStop* stopi = sp_get_stop_i(vector, point_i);
                 stopi->offset = offset;
                 if (write_repr) {