author | harlekin <harlekin> | 2002-04-20 21:23:38 (UTC) |
---|---|---|
committer | harlekin <harlekin> | 2002-04-20 21:23:38 (UTC) |
commit | 679083ca18ddbf4762578d1aa010203ea188586c (patch) (side-by-side diff) | |
tree | eada9fcd708aedbbe8c6ef207942125ce4ad97a9 /core/multimedia/opieplayer | |
parent | b452044ec1b3327f25f8552045b4229c8af39bf7 (diff) | |
download | opie-679083ca18ddbf4762578d1aa010203ea188586c.zip opie-679083ca18ddbf4762578d1aa010203ea188586c.tar.gz opie-679083ca18ddbf4762578d1aa010203ea188586c.tar.bz2 |
no / needed at the url end
-rw-r--r-- | core/multimedia/opieplayer/libmad/libmadplugin.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/core/multimedia/opieplayer/libmad/libmadplugin.cpp b/core/multimedia/opieplayer/libmad/libmadplugin.cpp index 4665408..7978805 100644 --- a/core/multimedia/opieplayer/libmad/libmadplugin.cpp +++ b/core/multimedia/opieplayer/libmad/libmadplugin.cpp @@ -223,66 +223,69 @@ int LibMadPlugin::tcp_open(char *address, int port) { int LibMadPlugin::http_read_line(int tcp_sock, char *buf, int size) { int offset = 0; do { if (std::read(tcp_sock, buf + offset, 1) < 0) return -1; if (buf[offset] != '\r') /* Strip \r from answer */ offset++; } while (offset < size - 1 && buf[offset - 1] != '\n'); buf[offset] = 0; return offset; } int LibMadPlugin::http_open(const QString& path ) { qDebug("Open http"); char *host; int port; char *request; int tcp_sock; char http_request[PATH_MAX]; char filename[PATH_MAX]; - char c; + // char c; char *arg =strdup(path.latin1()); QString errorMsg; /* Check for URL syntax */ // if (strncmp(arg, "http://", strlen("http://"))) { // qDebug("Url syntax error"); // return (0); // } qDebug("Parse URL"); port = 80; host = arg + strlen("http://"); - if ((request = strchr(host, '/')) == NULL) { - qDebug("Url syntax 2error %s", host); - return (0); - } + + // we need to think of something better than that + //if ((request = strchr(host, '/')) == NULL) { + // qDebug("Url syntax 2error %s", host); + // return (0); + // } + *request++ = 0; if (strchr(host, ':') != NULL) /* port is specified */ { port = atoi(strchr(host, ':') + 1); *strchr(host, ':') = 0; } qDebug("Open a TCP socket"); if (!(tcp_sock = tcp_open(host, port))) { perror("http_open"); errorMsg="http_open "+(QString)strerror(errno); QMessageBox::message("OPiePlayer",errorMsg); return (0); } snprintf(filename, sizeof(filename) - strlen(host) - 75, "%s", request); /* Send HTTP GET request */ /* Please don't use a Agent know by shoutcast (Lynx, Mozilla) seems to be reconized and print * a html page and not the stream */ snprintf(http_request, sizeof(http_request), "GET /%s HTTP/1.0\r\n" /* "User-Agent: Mozilla/2.0 (Win95; I)\r\n" */ "Pragma: no-cache\r\n" "Host: %s\r\n" "Accept: */*\r\n" "\r\n", filename, host); |