--- kaffeine/player-parts/Makefile.am 2004-09-18 20:12:22.000000000 +0200
+++ kaffeine/player-parts/Makefile.am 2006-03-24 15:00:52.000000000 +0100
@@ -8,10 +8,8 @@
kaffeineincludedir = $(includedir)/kaffeine
kaffeineinclude_HEADERS = mrl.h kmediapart.h playlistimport.h
-noinst_HEADERS = http.h
-
METASOURCES = AUTO
-libkmediapart_la_SOURCES = mrl.cpp kmediapart.cpp playlistimport.cpp http.c
+libkmediapart_la_SOURCES = mrl.cpp kmediapart.cpp playlistimport.cpp
libkmediapart_la_LIBADD = $(LIB_KPARTS)
libkmediapart_la_LDFLAGS = $(all_libraries) -version-info 0:1:0 -no-undefined
--- kaffeine/player-parts/playlistimport.cpp 2004-11-15 12:16:34.000000000 +0100
+++ kaffeine/player-parts/playlistimport.cpp 2006-03-24 15:00:44.000000000 +0100
@@ -358,80 +358,47 @@
bool PlaylistImport::ram(const MRL& playlist, MRL::List& mrls, QWidget* parent)
{
- kdDebug() << "PlaylistImport: ram: " << playlist.url() << endl;
- Q_ULONG result;
- char buf[10];
- char mime[1024];
-
- if (playlist.kurl().isLocalFile())
- {
- QFile file(playlist.kurl().path());
- if (!file.open(IO_ReadOnly))
- {
- kdError() << "PlaylistImport: Can't open " << playlist.url() << endl;
- return false;
- }
- result = file.readBlock(buf, 4);
- file.close();
- if (result != 4)
- {
- kdError() << "PlaylistImport: Can't read " << playlist.url() << endl;
- return false;
- }
- }
- else
- {
- if (playlist.kurl().protocol() == "http")
- {
+ kdDebug() << "PlaylistImport: ram: " << playlist.url() << endl;
- result = http_peek(playlist.url(), 4, buf, mime);
+ if (!playlist.kurl().isLocalFile() && !playlist.kurl().protocol().startsWith("http")) {
+ kdError() << "PlaylistImport: ram: Download via " << playlist.kurl().protocol() << " protocol not supported." << endl;
+ return false;
+ }
+
+ kdDebug() << "PlaylistImport: Seems to be a ram playlist!" << endl;
+
+ QString localFile, url;
+ if (KIO::NetAccess::mimetype(playlist.kurl(), parent) == "application/vnd.rn-realmedia") {
+ kdDebug() << "PlaylistImport: Seems to be a real media file" << endl;
+ return false;
+ }
+
+ if (KIO::NetAccess::download(playlist.kurl(), localFile, parent))
+ {
+ QFile plFile(localFile);
+ if (!plFile.open(IO_ReadOnly)) return false;
+ QTextStream stream( &plFile );
+
+ while (!stream.eof())
+ {
+ url = stream.readLine();
+
+ if (url[0] == '#') continue; /* ignore comments */
+ if (url == "--stop--") break; /* stop line */
+
+ if ((url.left(7) == "rtsp://") || (url.left(6) == "pnm://") || (url.left(7) == "http://"))
+ {
+ kdDebug() << "PlaylistImport: ram import url: " << url << endl;
+ mrls.append(MRL(url, url));
+ }
+ }
+ }
+ else {
+ kdError() << "PlaylistImport: " << KIO::NetAccess::lastErrorString() << endl;
+ return false;
+ }
- if (result <= 0)
- {
- kdError() << "Can't open " << playlist.url() << endl;
- return false;
- }
- }
- else
- {
- kdWarning() << "PlaylistImport: ram: Download via " << playlist.kurl().protocol() << " protocol not supported." << endl;
- return false;
- }
- }
-
- if (buf[0]=='.' && buf[1]=='R' && buf[2]=='M' && buf[3]=='F')
- {
- kdDebug() << "PlaylistImport: Seems to be a real media file" << endl;
- return false;
- }
-
- kdDebug() << "PlaylistImport: Seems to be a ram playlist!" << endl;
-
- QString localFile, url;
- if (KIO::NetAccess::download(playlist.kurl(), localFile, parent))
- {
- QFile plFile(localFile);
- if (!plFile.open(IO_ReadOnly)) return false;
- QTextStream stream( &plFile );
-
- while (!stream.eof())
- {
- url = stream.readLine();
-
- if (url[0] == '#') continue; /* ignore comments */
- if (url == "--stop--") break; /* stop line */
-
- if ((url.left(7) == "rtsp://") || (url.left(6) == "pnm://") || (url.left(7) == "http://"))
- {
- kdDebug() << "PlaylistImport: ram import url: " << url << endl;
- mrls.append(MRL(url, url));
- }
- }
- }
- else
- kdError() << "PlaylistImport: " << KIO::NetAccess::lastErrorString() << endl;
-
- return true;
+ return true;
}
/**********************************************************************************