[gnumeric] Print: avoid UMR in print area.



commit 72bdfca5024c01380999808272c82cb88851a234
Author: Morten Welinder <terra gnome org>
Date:   Wed Jul 8 16:53:01 2009 -0400

    Print: avoid UMR in print area.

 ChangeLog   |    4 ++++
 NEWS        |    1 +
 src/sheet.c |   12 +++++-------
 3 files changed, 10 insertions(+), 7 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 84b9cd3..79a79ba 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2009-07-08  Morten Welinder  <terra gnome org>
+
+	* src/sheet.c (sheet_get_nominal_printarea): Avoid UMR.
+
 2009-07-01  Morten Welinder  <terra gnome org>
 
 	* configure.in (libspreadsheet_reqs): Require goffice 0.7.9
diff --git a/NEWS b/NEWS
index 71291fb..2edc131 100644
--- a/NEWS
+++ b/NEWS
@@ -23,6 +23,7 @@ Morten:
 	* Support evaluated examples in function docs.
 	* Simplify Win32 build.
 	* Convert fn-logical and sample_datasource to new help format.
+	* Fix problem with print area.
 
 --------------------------------------------------------------------------
 Gnumeric 1.9.9
diff --git a/src/sheet.c b/src/sheet.c
index ab6548f..c9aa314 100644
--- a/src/sheet.c
+++ b/src/sheet.c
@@ -2064,17 +2064,15 @@ sheet_get_nominal_printarea (Sheet const *sheet)
 		return NULL;
 
 	val = gnm_expr_top_get_range (nexpr->texpr);
-	if (val == NULL)
-		return NULL;
-
-	r_ref = value_get_rangeref (val);
-	value_release (val);
-
-	if (r_ref == NULL)
+	r_ref = val ? value_get_rangeref (val) : NULL;
+	if (r_ref == NULL) {
+		value_release (val);
 		return NULL;
+	}
 
 	r = g_new0 (GnmRange, 1);
 	range_init_rangeref (r, r_ref);
+	value_release (val);
 
 	if (r->end.col >= (max_cols = gnm_sheet_get_max_cols (sheet)))
 		r->end.col = max_cols - 1;



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]