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 <[email protected]>
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

_______________________________________________
Pkg-grass-devel mailing list
[email protected]
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-grass-devel

Reply via email to