Only move to last row if it's vissible.
authoretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Fri, 11 Sep 2009 14:58:49 +0000 (14:58 +0000)
committeretxrab <etxrab@f5534014-38df-0310-8fa8-9805f1628bb7>
Fri, 11 Sep 2009 14:58:49 +0000 (14:58 +0000)
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@29861 f5534014-38df-0310-8fa8-9805f1628bb7

file.c

diff --git a/file.c b/file.c
index e206d564b5d99c1d9e59357196bc991634638579..da21a9c9d71340853706751adfdd090ffc04f967 100644 (file)
--- a/file.c
+++ b/file.c
@@ -756,6 +756,7 @@ cf_continue_tail(capture_file *cf, volatile int to_read, int *err)
   dfilter_t   *dfcode;
   gboolean filtering_tap_listeners;
   guint tap_flags;
+  gboolean visible;
 
   /* Compile the current display filter.
    * We assume this will not fail since cf->dfilter is only set in
@@ -794,8 +795,11 @@ cf_continue_tail(capture_file *cf, volatile int to_read, int *err)
     TRY{
         if (read_packet(cf, dfcode, filtering_tap_listeners, tap_flags,
                         data_offset) != -1) {
+            visible = TRUE;
             newly_displayed_packets++;
-        }
+               }else{
+                       visible = FALSE;
+               }
     }
     CATCH(OutOfMemoryError) {
         gpointer dialog;
@@ -848,7 +852,8 @@ cf_continue_tail(capture_file *cf, volatile int to_read, int *err)
      we have some new packets. */
   if (newly_displayed_packets && auto_scroll_live && cf->plist_end != NULL)
 #ifdef NEW_PACKET_LIST
-    new_packet_list_moveto_end();
+    if(visible)
+         new_packet_list_moveto_end();
 #else
     /* this doesn't seem to work well with a frozen GTK_Clist, so do this after
        packet_list_thaw() is done, see bugzilla 1188 */