[gnumeric] Don't accept GNM_SHEET_PATTERNS as a valid pattern. [#702833]
- From: Jean Bréfort <jbrefort src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnumeric] Don't accept GNM_SHEET_PATTERNS as a valid pattern. [#702833]
- Date: Sat, 22 Jun 2013 09:19:31 +0000 (UTC)
commit 80cce97c2451fb1df3cb0b47e30c5cca5eb93bb4
Author: Jean Brefort <jean brefort normalesup org>
Date: Sat Jun 22 11:14:54 2013 +0200
Don't accept GNM_SHEET_PATTERNS as a valid pattern. [#702833]
ChangeLog | 6 ++++++
NEWS | 1 +
src/mstyle.c | 2 +-
src/pattern.c | 5 +++--
4 files changed, 11 insertions(+), 3 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index caf2085..c019fc5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2013-06-22 Jean Brefort <jean brefort normalesup org>
+
+ * src/mstyle.c (gnm_style_set_pattern): don't accept GNM_SHEET_PATTERNS as
+ a valid pattern. [#702833]
+ * src/pattern.c (gnumeric_background_set): ditto.
+
2013-06-21 Morten Welinder <terra gnome org>
* src/item-grid.c (item_grid_draw_region): Plug leak.
diff --git a/NEWS b/NEWS
index f9f3f72..1ebe788 100644
--- a/NEWS
+++ b/NEWS
@@ -47,6 +47,7 @@ Jean:
* Adjust labels vertical alignment in document properties
dialog. [#700156]
* Don't crash when exchanging missing axes. [#702126]
+ * Don't accept GNM_SHEET_PATTERNS as a valid pattern. [#702833]
Morten:
* Improve xlsx import of style-only cells.
diff --git a/src/mstyle.c b/src/mstyle.c
index e43106a..cc929e2 100644
--- a/src/mstyle.c
+++ b/src/mstyle.c
@@ -1308,7 +1308,7 @@ gnm_style_set_pattern (GnmStyle *style, int pattern)
{
g_return_if_fail (style != NULL);
g_return_if_fail (pattern >= 0);
- g_return_if_fail (pattern <= GNUMERIC_SHEET_PATTERNS);
+ g_return_if_fail (pattern < GNUMERIC_SHEET_PATTERNS);
elem_changed (style, MSTYLE_PATTERN);
elem_set (style, MSTYLE_PATTERN);
diff --git a/src/pattern.c b/src/pattern.c
index e126fd0..2779ec9 100644
--- a/src/pattern.c
+++ b/src/pattern.c
@@ -68,7 +68,7 @@ gnumeric_background_set (GnmStyle const *mstyle, cairo_t *cr,
* Draw a stipple too if the pattern is > 1
*/
pattern = gnm_style_get_pattern (mstyle);
- if (pattern > 0) {
+ if (pattern > 0 && pattern < GNUMERIC_SHEET_PATTERNS) {
GOPattern gopat;
cairo_pattern_t *crpat;
gopat.pattern = patterns[pattern];
@@ -84,7 +84,8 @@ gnumeric_background_set (GnmStyle const *mstyle, cairo_t *cr,
gopat.back = GO_COLOR_INTERPOLATE (light, gopat.back, .5);
}
crpat = go_pattern_create_cairo_pattern (&gopat, cr);
- cairo_set_source (cr, crpat);
+ if (crpat)
+ cairo_set_source (cr, crpat);
cairo_pattern_destroy (crpat);
return TRUE;
} else if (is_selected) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]