[gnumeric] fix segmentation fault



commit abfe1aa02e22b620850882a3d581f2bf3b8f718e
Author: Andreas J Guelzow <aguelzow pyrshep ca>
Date:   Tue Jul 20 00:34:37 2010 -0600

    fix segmentation fault
    
    2010-07-20  Andreas J. Guelzow <aguelzow pyrshep ca>
    
    	* src/wbc-gtk-edit.c (wbcg_edit_finish): check whether showed_dialog
    	  is NULL before using it

 ChangeLog          |    5 +++++
 src/wbc-gtk-edit.c |   12 ++++++++----
 2 files changed, 13 insertions(+), 4 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 6815320..fa2540f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-07-20  Andreas J. Guelzow <aguelzow pyrshep ca>
+
+	* src/wbc-gtk-edit.c (wbcg_edit_finish): check whether showed_dialog
+	  is NULL before using it
+
 2010-07-19  Andreas J. Guelzow <aguelzow pyrshep ca>
 
 	* configure.in: checks for g_date_set_time_t and g_slice_alloc have
diff --git a/src/wbc-gtk-edit.c b/src/wbc-gtk-edit.c
index de91012..88a28aa 100644
--- a/src/wbc-gtk-edit.c
+++ b/src/wbc-gtk-edit.c
@@ -155,7 +155,8 @@ wbcg_edit_finish (WBCGtk *wbcg, WBCEditResult result,
 			if (sheet_ranges_split_region (sheet, selection,
 						       GO_CMD_CONTEXT (wbc), _("Set Text"))) {
 				range_fragment_free (selection);
-				*showed_dialog = TRUE;
+				if (showed_dialog != NULL)
+					*showed_dialog = TRUE;
 				return FALSE;
 			}
 			break;
@@ -166,7 +167,8 @@ wbcg_edit_finish (WBCGtk *wbcg, WBCEditResult result,
 			if (gnm_cell_is_nonsingleton_array (cell)) {
 				gnm_cmd_context_error_splits_array (GO_CMD_CONTEXT (wbc),
 								    _("Set Text"), NULL);
-				*showed_dialog = TRUE;
+				if (showed_dialog != NULL)
+					*showed_dialog = TRUE;
 				range_fragment_free (selection);
 				return FALSE;
 			}
@@ -187,7 +189,8 @@ wbcg_edit_finish (WBCGtk *wbcg, WBCEditResult result,
 			if (cmd_selection_is_locked_effective (sheet, selection, wbc,
 							       _("Set Text"))) {
 				range_fragment_free (selection);
-				*showed_dialog = TRUE;
+				if (showed_dialog != NULL)
+					*showed_dialog = TRUE;
 				return FALSE;
 			}
 			break;
@@ -199,7 +202,8 @@ wbcg_edit_finish (WBCGtk *wbcg, WBCEditResult result,
 			if (cmd_cell_range_is_locked_effective (sheet, &r, wbc,
 							       _("Set Text"))) {
 				range_fragment_free (selection);
-				*showed_dialog = TRUE;
+				if (showed_dialog != NULL)
+					*showed_dialog = TRUE;
 				return FALSE;
 			}
 			break;



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