diff options
| author | Kris De Gussem <kris.degussem@gmail.com> | 2012-02-22 18:49:11 +0000 |
|---|---|---|
| committer | Kris <Kris.De.Gussem@hotmail.com> | 2012-02-22 18:49:11 +0000 |
| commit | 0e4dbbbc3f531a1d5d7ac6396325bfe2185d04a2 (patch) | |
| tree | 0958a8693dc62745ce0fec19aa170e9acd8e776f /src/display/sp-canvas.cpp | |
| parent | Fix for 938349 : Compile error in spellcheck.h when aspell is unavailable (diff) | |
| download | inkscape-0e4dbbbc3f531a1d5d7ac6396325bfe2185d04a2.tar.gz inkscape-0e4dbbbc3f531a1d5d7ac6396325bfe2185d04a2.zip | |
cppcheck: null pointer dereference fix
(bzr r11009)
Diffstat (limited to 'src/display/sp-canvas.cpp')
| -rw-r--r-- | src/display/sp-canvas.cpp | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/src/display/sp-canvas.cpp b/src/display/sp-canvas.cpp index 580b214f0..fd320927b 100644 --- a/src/display/sp-canvas.cpp +++ b/src/display/sp-canvas.cpp @@ -271,6 +271,8 @@ public: /** * The canvas widget's expose callback. + * + * @todo FIXME: function allways retruns false. */ static gint handleExpose(GtkWidget *widget, GdkEventExpose *event); @@ -2007,22 +2009,26 @@ gint SPCanvasImpl::handleExpose(GtkWidget *widget, GdkEventExpose *event) } int n_rects = 0; - GdkRectangle *rects = 0; + GdkRectangle *rects = NULL; gdk_region_get_rectangles(event->region, &rects, &n_rects); - - for (int i = 0; i < n_rects; i++) { - Geom::IntRect r = Geom::IntRect::from_xywh( - rects[i].x + canvas->x0, rects[i].y + canvas->y0, - rects[i].width, rects[i].height); - - canvas->requestRedraw(r.left(), r.top(), r.right(), r.bottom()); + + if ((rects == NULL) || (n_rects == 0)) + { + return FALSE; } - - if (n_rects > 0) { + else + { + for (int i = 0; i < n_rects; i++) { + Geom::IntRect r = Geom::IntRect::from_xywh( + rects[i].x + canvas->x0, rects[i].y + canvas->y0, + rects[i].width, rects[i].height); + + canvas->requestRedraw(r.left(), r.top(), r.right(), r.bottom()); + } + g_free (rects); + return FALSE; } - - return FALSE; } gint SPCanvasImpl::handleKeyEvent(GtkWidget *widget, GdkEventKey *event) |
