After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 354093 - (PATCH INCLUDED) Seeking bar jumps to zero when dragging or scrolling
(PATCH INCLUDED) Seeking bar jumps to zero when dragging or scrolling
Status: RESOLVED NOTGNOME
Product: totem
Classification: Core
Component: Movie player
1.5.x
Other Linux
: Normal normal
: ---
Assigned To: General Totem maintainer(s)
General Totem maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2006-09-03 11:11 UTC by Vassilis Pandis
Modified: 2006-09-04 09:27 UTC
See Also:
GNOME target: ---
GNOME version: 2.15/2.16



Description Vassilis Pandis 2006-09-03 11:11:16 UTC
This is a bug/patch contributed by Liu Qishuai. The original bug report can be found at http://launchpad.net/bugs/58598 :

When playing rmvb files in totem-xine, if I scroll the mouse, the seeking bar jumps to zero and then jumps to the correct place. If I scroll the mouse quickly, it may jump to the start.

Steps to reproduct:
1. Install totem-xine (apt-get install totem-xine) and some codecs.
2. Open an rmvb movie.
3. Drag the seeking bar to a place.
4. Watch the seeking bar carefully when doing step 3. It firstly jump to zero and then jump to the correct place.
5. Scroll the mouse quickly. It will probably jump to start of the movie. This should not happen.

Apply this patch to solve the bug:

diff -ruNa totem-1.5.92.old/src/totem.c totem-1.5.92/src/totem.c
--- totem-1.5.92.old/src/totem.c 2006-08-15 04:41:47.000000000 +0800
+++ totem-1.5.92/src/totem.c 2006-09-02 22:57:06.941618080 +0800
@@ -953,6 +953,9 @@

        off_msec = off_sec * 1000;
        oldsec = bacon_video_widget_get_current_time (totem->bvw);
+ if (oldsec < 3) // last seeking didn't complete
+ return;
+
        sec = MAX (0, oldsec + off_msec);

        bacon_video_widget_seek_time (totem->bvw, sec, &err);
@@ -1374,7 +1377,8 @@
        update_skip_to (totem, stream_length);
        update_seekable (totem, seekable);

- if (totem->seek_lock == FALSE)
+ // if current_time == 0, 1, or 2, the last seeking may not completed
+ if (current_time > 2 && totem->seek_lock == FALSE)
        {
                gtk_adjustment_set_value (totem->seekadj,
                                current_position * 65535);
Comment 1 Bastien Nocera 2006-09-04 09:27:29 UTC
That patch is very obviously wrong. The bug is most likely in xine-lib, rather than Totem, or the xine-lib backend of Totem, and should be reported in xine's sourceforge.net tracker. See http://www.gnome.org/projects/totem/#bugs