[ncview] 02/08: Imported Upstream version 2.1.7+ds

Sebastiaan Couwenberg sebastic at moszumanska.debian.org
Wed Mar 30 19:42:08 UTC 2016


This is an automated email from the git hooks/post-receive script.

sebastic pushed a commit to branch master
in repository ncview.

commit 47db0849e8c6267da256da02906c0777f7665d5c
Author: Bas Couwenberg <sebastic at xs4all.nl>
Date:   Wed Mar 30 20:14:00 2016 +0200

    Imported Upstream version 2.1.7+ds
---
 src/do_buttons.c            | 22 ++++++++++++++++++++--
 src/interface/x_interface.c | 29 +++++++++++++++++++++++------
 src/ncview.defines.h        |  4 ++--
 3 files changed, 45 insertions(+), 10 deletions(-)

diff --git a/src/do_buttons.c b/src/do_buttons.c
index a65226c..d897830 100644
--- a/src/do_buttons.c
+++ b/src/do_buttons.c
@@ -84,6 +84,9 @@ do_restart( int modifier )
 do_rewind( int modifier )
 {
 	unsigned long delay_millisec;
+	size_t	size;
+	double	d_delta;
+	int	i_delta;
 
 	cur_button = BUTTON_REWIND;
 
@@ -92,7 +95,13 @@ do_rewind( int modifier )
 	in_timer_clear();
 
 	if( modifier == MOD_2 ) {
-		change_view( -10, FRAMES );
+		size = view_current_nt();
+		d_delta = (double)size / 1000.0;
+		if( d_delta < 10.0 )
+			i_delta = -10;
+		else
+			i_delta = -d_delta;
+		change_view( i_delta, FRAMES );
 		in_timer_set( (XtTimerCallbackProc)do_rewind, (XtPointer)(MOD_2), delay_millisec );
 		}
 	else
@@ -171,6 +180,9 @@ do_forward( int modifier )
 do_fastforward( int modifier )
 {
 	unsigned long	delay_millisec;
+	size_t	size;
+	double	d_delta;
+	int	i_delta;
 
 	cur_button = BUTTON_FASTFORWARD;
 
@@ -179,7 +191,13 @@ do_fastforward( int modifier )
 	delay_millisec = (long)(DELAY_DELTA * options.frame_delay) + DELAY_OFFSET;
 
 	if( modifier == MOD_2 ) {
-		if( change_view( 10, FRAMES ) == 0 )
+		size = view_current_nt();
+		d_delta = (double)size / 1000.0;
+		if( d_delta < 10.0 )
+			i_delta = 10;
+		else
+			i_delta = d_delta;
+		if( change_view( i_delta, FRAMES ) == 0 )
 			in_timer_set( (XtTimerCallbackProc)do_fastforward, (XtPointer)(MOD_2), delay_millisec );
 		}
 	else
diff --git a/src/interface/x_interface.c b/src/interface/x_interface.c
index 9d5cb50..8f49377 100644
--- a/src/interface/x_interface.c
+++ b/src/interface/x_interface.c
@@ -2685,12 +2685,20 @@ void x_clear_dim_buttons()
 		return;
 
 	i=0;
-	while( (w = *(xdimlist_widget + i++)) != NULL )
-		XtDestroyWidget( w );
+	while( (w = *(xdimlist_widget + i)) != NULL )
+		i++;
+	while( i>0 ) {
+		i--;
+		XtDestroyWidget( *(xdimlist_widget + i ));
+		}
 
 	i=0;
-	while( (w = *(ydimlist_widget + i++)) != NULL )
-		XtDestroyWidget( w );
+	while( (w = *(ydimlist_widget + i)) != NULL )
+		i++;
+	while( i>0 ) {
+		i--;
+		XtDestroyWidget( *(ydimlist_widget + i ));
+		}
 }
 
 /*************************************************************************************************/
@@ -3337,9 +3345,18 @@ void x_clear_dim_info()
 	if( diminfo_row_widget == NULL )
 		return;
 
+	/* Many thanks to Marco Atzeri for fixing a bug that was here. Upshot is that
+	 * the widgets appear to be linked, so safer to delete from the tail back to
+	 * the head rather than from the head to the tail.
+	 */
 	i=0;
-	while( (w = *(diminfo_row_widget + i++)) != NULL )
-		XtDestroyWidget( w );
+	while( (w = *(diminfo_row_widget + i)) != NULL )
+		i++;
+
+	while( i>0 ) {
+		i--;
+		XtDestroyWidget( *(diminfo_row_widget + i ));
+		}
 }
 
 /*************************************************************************************************/
diff --git a/src/ncview.defines.h b/src/ncview.defines.h
index 749a8ae..101f697 100644
--- a/src/ncview.defines.h
+++ b/src/ncview.defines.h
@@ -31,8 +31,8 @@
 #include <udunits2.h>
 #endif
 
-#define PROGRAM_ID		"Ncview 2.1.6 David W. Pierce  29 Oct 2015"
-#define PROGRAM_VERSION_STRING	"2.1.6"
+#define PROGRAM_ID		"Ncview 2.1.7 David W. Pierce  29 March 2016"
+#define PROGRAM_VERSION_STRING	"2.1.7"
 #define APP_RES_VERSION 	1.93
 
 #ifndef TRUE

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-grass/ncview.git



More information about the Pkg-grass-devel mailing list