]>
Commit | Line | Data |
---|---|---|
bc1e1791 | 1 | --- arts-1.1.1/soundserver/soundserverv2_impl.cc.orig 2003-03-17 09:24:17.000000000 +0100 |
2 | +++ arts-1.1.1/soundserver/soundserverv2_impl.cc 2003-03-17 09:19:54.000000000 +0100 | |
3 | @@ -119,7 +119,36 @@ | |
4 | ||
5 | TraderQuery query; | |
6 | query.supports("Interface","Arts::PlayObject"); | |
7 | - query.supports("MimeType", mimetype); | |
8 | + | |
9 | + /* Parse URL protocol */ | |
10 | + string protocol; | |
11 | + | |
12 | + unsigned int urlProto = url.find( ":/" ); | |
13 | + | |
14 | + if (urlProto != std::string::npos) | |
15 | + { | |
16 | + /* Remove [user[:passwd]@] */ | |
17 | + unsigned int urlAt = url.find( '@' ); | |
18 | + | |
19 | + if (urlAt++ == std::string::npos || urlAt >= urlProto) | |
20 | + { | |
21 | + urlAt = 0; | |
22 | + } | |
23 | + | |
24 | + /* Remove [:port] */ | |
25 | + urlProto = url.find( ':', urlAt ); | |
26 | + | |
27 | + protocol = std::string( url, urlAt, (urlProto - urlAt) ); | |
28 | + } | |
29 | + | |
30 | + if (!protocol.empty() && protocol != "file") | |
31 | + { | |
32 | + query.supports("Protocol", protocol); | |
33 | + } | |
34 | + if (mimetype != "application/octet-stream") | |
35 | + { | |
36 | + query.supports("MimeType", mimetype); | |
37 | + } | |
38 | ||
39 | string objectType; | |
40 |