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 743525 - totem: exits with "Totem:ERROR:totem-grilo.c:710:browse_cb: code should not be reached"
totem: exits with "Totem:ERROR:totem-grilo.c:710:browse_cb: code should not b...
Status: RESOLVED DUPLICATE of bug 730028
Product: totem
Classification: Core
Component: Plugins
3.14.x
Other Linux
: Normal normal
: ---
Assigned To: General Totem maintainer(s)
General Totem maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2015-01-26 12:20 UTC by uwe+gnome
Modified: 2015-04-08 14:55 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch handles video types only and ignores other types from grilo (2.28 KB, patch)
2015-04-05 13:24 UTC, Jan-Michael Brummer
none Details | Review

Description uwe+gnome 2015-01-26 12:20:01 UTC
[this is a cut-and-paste of a bug originally reported to Debian, see https://bugs.debian.org/776038. I was asked to report the issue here.]

Hello,

I can reproducibly crash totem by starting it without parameters, select
"Channels", then my router's DLNA icon -> Internetradio ->
$radiostation.

I can play this stream with vlc just fine.

This is the backtrace as catched by gdb:

(gdb) run
Starting program: /usr/bin/totem 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe550a700 (LWP 18149)]
[New Thread 0x7fffe4d09700 (LWP 18150)]
[New Thread 0x7fffd6f02700 (LWP 18151)]
[New Thread 0x7fffd6701700 (LWP 18152)]
[New Thread 0x7fffd5f00700 (LWP 18153)]
[New Thread 0x7fffd56ff700 (LWP 18154)]
[New Thread 0x7fffd4efe700 (LWP 18155)]
[New Thread 0x7fffcffff700 (LWP 18156)]
[New Thread 0x7fffcf7fe700 (LWP 18157)]
[New Thread 0x7fffc4994700 (LWP 18158)]
[Thread 0x7fffcf7fe700 (LWP 18157) exited]
[New Thread 0x7fffcf7fe700 (LWP 18165)]
[Thread 0x7fffc4994700 (LWP 18158) exited]
[Thread 0x7fffcf7fe700 (LWP 18165) exited]
**
Totem:ERROR:totem-grilo.c:710:browse_cb: code should not be reached

Program received signal SIGABRT, Aborted.
0x00007ffff0066107 in __GI_raise (sig=sig@entry=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
56	../nptl/sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
  • #0 __GI_raise
    at ../nptl/sysdeps/unix/sysv/linux/raise.c line 56
  • #1 __GI_abort
    at abort.c line 89
  • #2 g_assertion_message
    at /tmp/buildd/glib2.0-2.42.1/./glib/gtestutils.c line 2291
  • #3 g_assertion_message_expr
    at /tmp/buildd/glib2.0-2.42.1/./glib/gtestutils.c line 2306
  • #4 browse_cb
    at totem-grilo.c line 710
  • #5 queue_process
    at grl-source.c line 2082
  • #6 g_main_dispatch
    at /tmp/buildd/glib2.0-2.42.1/./glib/gmain.c line 3111
  • #7 g_main_context_dispatch
    at /tmp/buildd/glib2.0-2.42.1/./glib/gmain.c line 3710
  • #8 g_main_context_iterate
    at /tmp/buildd/glib2.0-2.42.1/./glib/gmain.c line 3781
  • #9 g_main_context_iteration
    at /tmp/buildd/glib2.0-2.42.1/./glib/gmain.c line 3842
  • #10 g_application_run
    at /tmp/buildd/glib2.0-2.42.1/./gio/gapplication.c line 2282
  • #11 main
    at totem.c line 266

Best regards
Uwe

-- System Information:
Debian Release: 8.0
  APT prefers testing-proposed-updates
  APT policy: (900, 'testing-proposed-updates'), (900, 'testing'), (600, 'unstable'), (500, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages totem depends on:
ii  gnome-icon-theme                        3.12.0-1
ii  gnome-icon-theme-symbolic               3.12.0-1
ii  grilo-plugins-0.2                       0.2.13-3
ii  gsettings-desktop-schemas               3.14.1-1
ii  gstreamer1.0-clutter                    2.0.12-1
ii  gstreamer1.0-plugins-bad                1.4.4-2
ii  gstreamer1.0-plugins-base               1.4.4-2
ii  gstreamer1.0-plugins-good               1.4.4-2
ii  gstreamer1.0-x                          1.4.4-2
ii  libatk1.0-0                             2.14.0-1
ii  libc6                                   2.19-13
ii  libcairo-gobject2                       1.14.0-2.1
ii  libcairo2                               1.14.0-2.1
ii  libclutter-1.0-0                        1.20.0-1
ii  libclutter-gst-2.0-0                    2.0.12-1
ii  libclutter-gtk-1.0-0                    1.6.0-1
ii  libcogl-pango20                         1.18.2-3
ii  libcogl-path20                          1.18.2-3
ii  libcogl20                               1.18.2-3
ii  libdrm2                                 2.4.58-2
ii  libegl1-mesa [libegl1-x11]              10.3.2-1
ii  libgbm1                                 10.3.2-1
ii  libgdk-pixbuf2.0-0                      2.31.1-2+b1
ii  libgirepository-1.0-1                   1.42.0-2.2
ii  libglib2.0-0                            2.42.1-1
ii  libgnome-desktop-3-10                   3.14.1-1
ii  libgrilo-0.2-1                          0.2.11-2
ii  libgstreamer-plugins-base1.0-0          1.4.4-2
ii  libgstreamer1.0-0                       1.4.4-2
ii  libgtk-3-0                              3.14.5-1
ii  libjson-glib-1.0-0                      1.0.2-1
ii  libnautilus-extension1a                 3.14.1-2
ii  libpango-1.0-0                          1.36.8-3
ii  libpangocairo-1.0-0                     1.36.8-3
ii  libpeas-1.0-0                           1.12.1-2
ii  libtotem-plparser18                     3.10.3-1
ii  libtotem0                               3.14.0-2
ii  libwayland-client0                      1.6.0-2
ii  libwayland-cursor0                      1.6.0-2
ii  libwayland-egl1-mesa [libwayland-egl1]  10.3.2-1
ii  libwayland-server0                      1.6.0-2
ii  libx11-6                                2:1.6.2-3
ii  libxcomposite1                          1:0.4.4-1
ii  libxdamage1                             1:1.1.4-2+b1
ii  libxext6                                2:1.3.3-1
ii  libxfixes3                              1:5.0.1-2+b2
ii  libxi6                                  2:1.7.4-1+b2
ii  libxkbcommon0                           0.4.3-2
ii  libxml2                                 2.9.1+dfsg1-4
ii  libxrandr2                              2:1.4.2-1+b1
pn  python:any                              <none>
ii  totem-common                            3.14.0-2

Versions of packages totem recommends:
ii  gstreamer1.0-libav         1.4.4-2
ii  gstreamer1.0-plugins-ugly  1.4.4-2
ii  gstreamer1.0-pulseaudio    1.4.4-2
ii  totem-plugins              3.14.0-2
Comment 1 Jan-Michael Brummer 2015-04-05 13:24:46 UTC
Created attachment 300986 [details] [review]
Patch handles video types only and ignores other types from grilo

This bug also occures in totem 3.16 browsing a local NAS. Attached patch fixes the issue.
Comment 2 Bastien Nocera 2015-04-07 10:11:12 UTC
Thanks for taking the time to report this.
This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find.

*** This bug has been marked as a duplicate of bug 730028 ***
Comment 3 Bastien Nocera 2015-04-07 10:12:27 UTC
(In reply to Jan-Michael Brummer from comment #1)
> Created attachment 300986 [details] [review] [review]
> Patch handles video types only and ignores other types from grilo
> 
> This bug also occures in totem 3.16 browsing a local NAS. Attached patch
> fixes the issue.

We can't do that in Totem. Your UPnP server is buggy, and the filtering should happen in the grilo plugin for it.
Comment 4 Jan-Michael Brummer 2015-04-07 16:47:31 UTC
Please correct me if i'm wrong, but totem gets the sources from grilo containing video data. It's not a problem of the NAS or grilo that it is also sends other types of data in case of GRL_MEDIA_TYPE_ALL. Therefore totem *needs* to check the media type as well. It currently only checks if it is included but not if it is explicit set.
Comment 5 Bastien Nocera 2015-04-08 14:55:34 UTC
(In reply to Jan-Michael Brummer from comment #4)
> Please correct me if i'm wrong, but totem gets the sources from grilo
> containing video data. It's not a problem of the NAS or grilo that it is
> also sends other types of data in case of GRL_MEDIA_TYPE_ALL.

We don't request GRL_MEDIA_TYPE_ALL, we request GRL_MEDIA_TYPE_VIDEO.

> Therefore
> totem *needs* to check the media type as well.

Nope. Totem asks for videos and should only receive videos and box types, nothing else.

> It currently only checks if
> it is included but not if it is explicit set.

The patch is also completely incorrect, as a media can not answer true to both GRL_IS_MEDIA_VIDEO() and GRL_IS_MEDIA_BOX().