--- kurl.cpp.orig Wed Jul 28 10:47:13 1999 +++ kurl.cpp Wed Jul 28 10:51:24 1999 @@ -151,21 +151,27 @@ else { // Relative URL - - malformed = _base_url.malformed; - protocol_part = _base_url.protocol_part; - host_part = _base_url.host_part; - port_number = _base_url.port_number; - path_part = _base_url.path_part; - path_part_decoded = _base_url.path_part_decoded; - ref_part = _base_url.ref_part; - dir_part = _base_url.dir_part; - user_part = _base_url.user_part; - passwd_part = _base_url.passwd_part; - bNoPath = _base_url.bNoPath; - detach(); - - cd( _rel_url ); + if (strncmp ( "//", _rel_url, 2 ) == 0) + { + parse( _base_url.protocol_part+":"+_rel_url); + } + else + { + malformed = _base_url.malformed; + protocol_part = _base_url.protocol_part; + host_part = _base_url.host_part; + port_number = _base_url.port_number; + path_part = _base_url.path_part; + path_part_decoded = _base_url.path_part_decoded; + ref_part = _base_url.ref_part; + dir_part = _base_url.dir_part; + user_part = _base_url.user_part; + passwd_part = _base_url.passwd_part; + bNoPath = _base_url.bNoPath; + detach(); + + cd( _rel_url ); + } } }