summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 90dfe44)
raw | patch | inline | side by side (parent: 90dfe44)
author | joncruz <joncruz@users.sourceforge.net> | |
Sun, 2 Apr 2006 04:41:33 +0000 (04:41 +0000) | ||
committer | joncruz <joncruz@users.sourceforge.net> | |
Sun, 2 Apr 2006 04:41:33 +0000 (04:41 +0000) |
ChangeLog | patch | blob | history | |
src/ui/widget/selected-style.cpp | patch | blob | history |
diff --git a/ChangeLog b/ChangeLog
index 720da5f04f2ff49e99f649e769a51093ae3faddd..b8ceddef996b38083959d792b167f89d1310d930 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+2006-04-01 Jon A. Cruz <jon@joncruz.org>
+
+ * src/ui/widget/selected-style.cpp:
+
+ Safety check for null pointer.
+
2006-04-01 Jon A. Cruz <jon@joncruz.org>
* configure.ac, src/interface.cpp, src/dialogs/swatches.cpp:
index 066d721752d2f5ccc82957642fe75a88521b6a5b..f5b1fa08fd47970af6f6faae26f6e8571aa01d41 100644 (file)
} else if (paint->set && paint->type == SP_PAINT_TYPE_PAINTSERVER) {
SPPaintServer *server = (i == SS_FILL)? SP_STYLE_FILL_SERVER (query) : SP_STYLE_STROKE_SERVER (query);
-
- Inkscape::XML::Node *srepr = SP_OBJECT_REPR(server);
- _paintserver_id[i] += "url(#";
- _paintserver_id[i] += srepr->attribute("id");
- _paintserver_id[i] += ")";
-
- if (SP_IS_LINEARGRADIENT (server)) {
- place->add(_lgradient[i]);
- _tooltips.set_tip(*place, __lgradient[i]);
- _mode[i] = SS_LGRADIENT;
- } else if (SP_IS_RADIALGRADIENT (server)) {
- place->add(_rgradient[i]);
- _tooltips.set_tip(*place, __rgradient[i]);
- _mode[i] = SS_RGRADIENT;
- } else if (SP_IS_PATTERN (server)) {
- place->add(_pattern[i]);
- _tooltips.set_tip(*place, __pattern[i]);
- _mode[i] = SS_PATTERN;
+ if ( server ) {
+ Inkscape::XML::Node *srepr = SP_OBJECT_REPR(server);
+ _paintserver_id[i] += "url(#";
+ _paintserver_id[i] += srepr->attribute("id");
+ _paintserver_id[i] += ")";
+
+ if (SP_IS_LINEARGRADIENT (server)) {
+ place->add(_lgradient[i]);
+ _tooltips.set_tip(*place, __lgradient[i]);
+ _mode[i] = SS_LGRADIENT;
+ } else if (SP_IS_RADIALGRADIENT (server)) {
+ place->add(_rgradient[i]);
+ _tooltips.set_tip(*place, __rgradient[i]);
+ _mode[i] = SS_RGRADIENT;
+ } else if (SP_IS_PATTERN (server)) {
+ place->add(_pattern[i]);
+ _tooltips.set_tip(*place, __pattern[i]);
+ _mode[i] = SS_PATTERN;
+ }
+ } else {
+ g_warning ("file %s: line %d: Unknown paint server", __FILE__, __LINE__);
}
} else if (paint->set && paint->type == SP_PAINT_TYPE_NONE) {