diff -u -r mpg123-0.59r-old/mpg123.c mpg123-0.59r-new/mpg123.c
--- mpg123-0.59r-old/mpg123.c	Tue Jun 15 15:21:36 1999
+++ mpg123-0.59r-new/mpg123.c	Mon Apr 19 02:48:44 2004
@@ -265,7 +265,11 @@
 
     /* Get playlist dirname to append it to the files in playlist */
     if (listname) {
-        if ((slashpos=strrchr(listname, '/'))) {
+	if (strncmp(listname, "http://", 7) == 0)
+	    slashpos=listname + 7;
+	else
+	    slashpos=listname;
+	if ((slashpos=strrchr(slashpos, '/'))) {
             listnamedir=strdup (listname);
             listnamedir[1 + slashpos - listname] = 0;
         }
@@ -306,9 +310,11 @@
                 if (line[0]=='\0' || line[0]=='#')
                     continue;
 		if ((listnamedir) && (line[0]!='/') && (line[0]!='\\')){
-                    strcpy (linetmp, listnamedir);
-                    strcat (linetmp, line);
-		    strcpy (line, linetmp);
+		    if (strncmp(line, "http://", 7) != 0) {
+			strcpy (linetmp, listnamedir);
+			strcat (linetmp, line);
+			strcpy (line, linetmp);
+		    }
                 }
                 return (line);
             }

