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 164019 - Spins getting the mime-type of a last.fm stream
Spins getting the mime-type of a last.fm stream
Status: RESOLVED FIXED
Product: gnome-vfs
Classification: Deprecated
Component: Module: http
2.8.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-vfs maintainers
gnome-vfs maintainers
Depends on:
Blocks: 163565
 
 
Reported: 2005-01-14 00:27 UTC by Bastien Nocera
Modified: 2005-01-28 15:49 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Work around for broken icecast server (3.62 KB, patch)
2005-01-20 22:53 UTC, Christian Kellner
none Details | Review
Updated version! (12.16 KB, patch)
2005-01-28 15:46 UTC, Christian Kellner
none Details | Review
Differ between dav:// and http:// to avoid hangs in propfind (). (7.34 KB, patch)
2005-01-28 15:49 UTC, Christian Kellner
none Details | Review

Description Bastien Nocera 2005-01-14 00:27:39 UTC
1. go to http://last.fm/ and create an account
2. choose a "preview" playlist
3. grab the playlist with wget, or something else
4. the playlist references a mp3 stream
5. gnomevfs-info can't get the mime-type of the stream, and gets a whole load of
data from the network

Short version:
gnomevfs-info
"http://moses.last.fm/last.mp3?Session=17cb57b83ff3d9649e918e13797d2115"
Comment 1 Christian Kellner 2005-01-20 15:03:25 UTC
This is definitly ICECAST that is broken here. It totally ignores the requested
access method (PROPFIND, HEAD, even OPTIONS) but starts streaming immediately. I
am trying to work around that now. I leave this bug open as long as I am working
on this even though it's not a gnomevfs bug.
Comment 2 Christian Kellner 2005-01-20 22:53:02 UTC
Created attachment 36309 [details] [review]
Work around for broken icecast server

This is the first part of the patch I am going to commit tomorrow. We will now
do a OPTIONS command on get_file_info. We handle the start of the streaming in
the http_options method. Then we decice to a PROPFIND or a HEAD based on the
DAV header supplied (or not). So in the worst case of a webdav resource we have
one round trip more but in the case of a normal http file we still have to
roundtrips but a cheaper OPTIONS instead of a PROPFIND that would fail.
Ill work and test that stuff more tomorrow and then commit it.
Comment 3 Christian Kellner 2005-01-28 15:46:54 UTC
Created attachment 36652 [details] [review]
Updated version!

Updated version of the first approach. I put this here to just to have it if I
wanna look at time some time later. I commited another patch to fix that issue.
Comment 4 Christian Kellner 2005-01-28 15:49:24 UTC
Created attachment 36653 [details] [review]
Differ between dav:// and http:// to avoid hangs in propfind ().

This is the patch I commited to head to fix this issue. It's a total diffrent
apporach then the first one: We are now differentiate between dav:// and
http:// so we wont run into any problems inside the dav specific methods.