[gnumeric] Fix a regression in chart series evaluation. [#624263]
- From: Jean Bréfort <jbrefort src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnumeric] Fix a regression in chart series evaluation. [#624263]
- Date: Tue, 13 Jul 2010 19:17:07 +0000 (UTC)
commit 7caba53cd0c883e309482a013df59b1d0b97315d
Author: Jean Brefort <jean brefort normalesup org>
Date: Tue Jul 13 21:17:35 2010 +0200
Fix a regression in chart series evaluation. [#624263]
ChangeLog | 4 ++++
NEWS | 3 ++-
plugins/excel/ChangeLog | 4 ++++
plugins/excel/ms-chart.c | 2 +-
src/graph.c | 25 ++++++++++++-------------
5 files changed, 23 insertions(+), 15 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 44f00f6..0bc5f78 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2010-07-13 Jean Brefort <jean brefort normalesup org>
+ * src/graph.c (gnm_go_data_vector_load_len): fixed a regression. [#624263]
+
+2010-07-13 Jean Brefort <jean brefort normalesup org>
+
* src/cell-draw.c (cell_calc_layout): fixed alignment in cells with rtl
text and rtl sheets. [see #623241]
* src/cellspan.c (cell_calc_span): ditto.
diff --git a/NEWS b/NEWS
index 3f23482..8049757 100644
--- a/NEWS
+++ b/NEWS
@@ -31,7 +31,8 @@ Andreas:
Jean:
* Fix strong/weak cursor display. [#623241]
- * Fix regression in ms_excel_chart_read. [#623960]I
+ * Fix regression in ms_excel_chart_read. [#623960]
+ * Fix a regression in chart series evaluation. [#624263]
* Install a self-consistent headers list.
Morten:
diff --git a/plugins/excel/ChangeLog b/plugins/excel/ChangeLog
index 116b6b8..dbdcc05 100644
--- a/plugins/excel/ChangeLog
+++ b/plugins/excel/ChangeLog
@@ -1,3 +1,7 @@
+2010-07-13 Jean Brefort <jean brefort normalesup org>
+
+ * ms-chart.c (chart_write_AREAFORMAT): fixed the auto flag. [see #624263]
+
2010-07-10 Jean Brefort <jean brefort normalesup org>
* ms-chart.c (end): do not crash when a chart has more than one
diff --git a/plugins/excel/ms-chart.c b/plugins/excel/ms-chart.c
index 08fdcea..52fbb1c 100644
--- a/plugins/excel/ms-chart.c
+++ b/plugins/excel/ms-chart.c
@@ -4010,7 +4010,7 @@ chart_write_AREAFORMAT (XLChartWriteState *s, GOStyle const *style, gboolean dis
break;
}
- if (style->fill.auto_back && !disable_auto)
+ if (style->fill.auto_type && style->fill.auto_fore && style->fill.auto_back && !disable_auto)
flags |= 1;
if (style->fill.invert_if_negative)
flags |= 2;
diff --git a/src/graph.c b/src/graph.c
index ef93791..78c3034 100644
--- a/src/graph.c
+++ b/src/graph.c
@@ -482,23 +482,22 @@ gnm_go_data_vector_load_len (GODataVector *dat)
eval_pos_init_dep (&ep, &vec->dep);
if (vec->val == NULL && vec->dep.texpr != NULL) {
- if (gnm_expr_is_rangeref (vec->dep.texpr->expr)) {
+ GSList *l;
+ if (gnm_expr_is_rangeref (vec->dep.texpr->expr) && ((l = gnm_expr_top_get_ranges (vec->dep.texpr)))) {
GSList *l = gnm_expr_top_get_ranges (vec->dep.texpr);
unsigned len = g_slist_length (l);
- if (l) {
- if (l->next == NULL) /* only one range */
- vec->val = (GnmValue *) l->data;
- else {
- GSList *cur = l;
- unsigned i;
- vec->val = value_new_array_empty (len, 1);
- for (i = 0; i < len; i++) {
- vec->val->v_array.vals[i][0] = (GnmValue *) cur->data;
- cur = cur->next;
- }
+ if (l->next == NULL) /* only one range */
+ vec->val = (GnmValue *) l->data;
+ else {
+ GSList *cur = l;
+ unsigned i;
+ vec->val = value_new_array_empty (len, 1);
+ for (i = 0; i < len; i++) {
+ vec->val->v_array.vals[i][0] = (GnmValue *) cur->data;
+ cur = cur->next;
}
- g_slist_free (l);
}
+ g_slist_free (l);
} else {
vec->val = gnm_expr_top_eval (vec->dep.texpr, &ep,
GNM_EXPR_EVAL_PERMIT_NON_SCALAR | GNM_EXPR_EVAL_PERMIT_EMPTY);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]