From patchwork Thu Mar 28 18:35:19 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Carl Eugen Hoyos X-Patchwork-Id: 12522 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id EE42344842E for ; Thu, 28 Mar 2019 20:35:28 +0200 (EET) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C562268A946; Thu, 28 Mar 2019 20:35:28 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-io1-f41.google.com (mail-io1-f41.google.com [209.85.166.41]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id DE43568A74E for ; Thu, 28 Mar 2019 20:35:21 +0200 (EET) Received: by mail-io1-f41.google.com with SMTP id e13so18091361ioq.6 for ; Thu, 28 Mar 2019 11:35:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=efhEoek9vIEWWZhj6KetJL6td8erkn/UHGedPwyQACI=; b=TErEQ4FUtz9numxqPzq9/RqNcPOT1VzUGBOdBDREdzBVs6JT6O+/vXewJvehEDXiwF amU/nZS/eOV2dnwhgSBVrcTrh3KM4QIg2xwg24P9XgiL2VYjJ2Q8+ZtixI3FIUamQYKy 735Yfgy6OE/uUsr+HtatGTtv4YeQ6LedrQDsGQUaX+XIyPX7xfwg5Fgjr7Qdn8mrJsRr QwbT7K3G+64v6ZMQ/pdY4xaWffLLB3ppqs6WP0NaMm3WziCBNB8dQ6r/Cr5y9v/hAoh7 0kaZfyMAfFRsNeAYnSqOTgH45ZXFNJJTPAC++P2r4w8uwq9RH86yARSFqgkPHK7h3CN6 Jm1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=efhEoek9vIEWWZhj6KetJL6td8erkn/UHGedPwyQACI=; b=R7bPaLG2yWpyN7dWFaIO31Azr1BwBnnd5HJzudIc/sWnSDlNthDBX+JI0ODUYyADxy AV42JsKtCZ22m2lnyqYqZj1zQJ3t4PyKjhx00SvtMelfPSwX8W5hJ9YMfVXLtyFza3wh zccDDx11XKp0eDn9J1Nru4nwKUvWsBFBOrAhitBuIh4FTqIBa83ACUnX6qAd+BRUVSZd XoeLeiMBHrjONfVYWAI4rqn4Swlm2CeZYcmJb5liGr29TDYLqhlbBc5oC/nkD13cbLx9 knup+N9qxvXwRJNTPuRZKqsSzEEsupkTjgIWcnIh9m4Iy8GZ41Q84ICeZtFVRtwJNE/g td5A== X-Gm-Message-State: APjAAAVZqf6nt4h8YB+9vaBRlVQjUvv7+oyV6+jxmoirz+JKb44RZrnT KQY8eArCZKM1nlhHRcQlYYmVKZm2NiNqLCav/MvKPw== X-Google-Smtp-Source: APXvYqwdz2JUu+Uo0jnqGeR9I19UOlaItWzpwsnTAR3SuTYOrrk0EyaJcQsZ4sk8ZHxkG1gaV8xTqzhNDP7RRc/nVZg= X-Received: by 2002:a6b:7401:: with SMTP id s1mr25759179iog.55.1553798120302; Thu, 28 Mar 2019 11:35:20 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a02:5503:0:0:0:0:0 with HTTP; Thu, 28 Mar 2019 11:35:19 -0700 (PDT) From: Carl Eugen Hoyos Date: Thu, 28 Mar 2019 19:35:19 +0100 Message-ID: To: FFmpeg development discussions and patches Subject: [FFmpeg-devel] [PATCH]lavf/utils: Allow url credentials to contain a slash X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Hi! Attached patch fixes ticket #7816 for me. Please review, Carl Eugen From 7f5536c76fc873c18b49c1181f34f7585c48dc87 Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos Date: Thu, 28 Mar 2019 19:33:22 +0100 Subject: [PATCH] lavf/utils: Allow url credentials to contain a slash. Fixes ticket #7816. --- libavformat/utils.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavformat/utils.c b/libavformat/utils.c index 9b3f0d2..c3ec4cc 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -4730,7 +4730,7 @@ void av_url_split(char *proto, int proto_size, char *hostname, int hostname_size, int *port_ptr, char *path, int path_size, const char *url) { - const char *p, *ls, *ls2, *at, *at2, *col, *brk; + const char *p, *ls, *ls2, *ls3, *at, *at2, *col, *brk; if (port_ptr) *port_ptr = -1; @@ -4760,6 +4760,9 @@ void av_url_split(char *proto, int proto_size, /* separate path from hostname */ ls = strchr(p, '/'); ls2 = strchr(p, '?'); + ls3 = strchr(p, '@'); + if (ls3 && ls3 > ls && (!ls2 || ls2 > ls3)) + ls = strchr(ls3, '/'); if (!ls) ls = ls2; else if (ls && ls2) -- 1.7.10.4