From patchwork Fri Feb 18 18:34:32 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nil Admirari X-Patchwork-Id: 34388 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6838:d078:0:0:0:0 with SMTP id x24csp1187174nkx; Fri, 18 Feb 2022 10:35:49 -0800 (PST) X-Google-Smtp-Source: ABdhPJwaqKKOfgFfwYbk4YFGqMWIpzTJ7eG03VBZBtiiOkrgPXbyiQyoapO8IzDZyvW2A2KCsbwA X-Received: by 2002:a17:906:264d:b0:6b1:13e0:9981 with SMTP id i13-20020a170906264d00b006b113e09981mr7216342ejc.611.1645209349323; Fri, 18 Feb 2022 10:35:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1645209349; cv=none; d=google.com; s=arc-20160816; b=G4Ntn2mBXC8zkevyPRj1w4xGx3FjB+0Oo9kK0jMXY7yziIeABb2H/X971fW6nsVULa wJkn2EjSAFKxbVsFIKIx8KCdZcQAG39by7jJQT9hk6akNWor0tbB8Y9y59i9OftL9iW9 zB5PCSZ4faBS34edRvgbKmRVhknfJvR6/El+3/73/eWGdgEeDrooyOd8Pk7srPiaYtMe GxIj5pyuh7N7tb0YuPuriuyED0rBo5AiPvG6JeNvKiBW7uLrVAlrv8a+IKXJEdR+EeeS qrvcBzQuMR37vu0zIKxi0GDVXp/8oV7dY08cfvzZqYge9JG9PJT6tK1o7pGtu9oEPaDe 1bbg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:reply-to:list-subscribe :list-help:list-post:list-archive:list-unsubscribe:list-id :precedence:subject:mime-version:references:in-reply-to:message-id :date:to:from:dkim-signature:delivered-to; bh=hCVbt+lzr4OAhA3TV9+Jn55D7w0xjewMlwp0jEIwql4=; b=z07Ocikmhul9SCVXUwPbnKleg61j1yvW103780PMiQk07vbNyqIEbv+D6CC4gp8mHr pvLsdKUTzOFKaxszZUvp4Arbg+bYxmakt7fumBEm7sXfmMNy6A3ous4+oL9sftp/VHRJ nDyyjol14nvvJcf2IxA/cRG1S17VCSBrsy6b5+sc+cR6+YyCoitAsX33cIfq87aVQ+X3 Q1SdlIB9jib7qRBIFV9h6Ri5R2VDCEwP4ttlrd2ll9Uetk550S1ER0dfAgVFqcgbCKDF Iwnb/jmvlFaZhoLPan2Qn80h0vbPmkXxwJ7VhEw8/xbB7yT34YZDpNydu7vdbZK3+4Tn ubpA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@mailo.com header.s=mailo header.b="KMgn/HxA"; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mailo.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id r7si7879967edd.171.2022.02.18.10.35.48; Fri, 18 Feb 2022 10:35:49 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@mailo.com header.s=mailo header.b="KMgn/HxA"; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=mailo.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 263CB68AAC1; Fri, 18 Feb 2022 20:35:06 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from msg-1.mailo.com (msg-1.mailo.com [213.182.54.11]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 772CB68B0A8 for ; Fri, 18 Feb 2022 20:34:55 +0200 (EET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=mailo.com; s=mailo; t=1645209288; bh=IIZWG4Ae6e2j6qda26O/yamptBIE8ZqN2zc7+FhoQ0I=; h=X-EA-Auth:From:To:Subject:Date:Message-Id:X-Mailer:In-Reply-To: References:MIME-Version:Content-Transfer-Encoding; b=KMgn/HxA5em2Jm1jl6NcMpwHiABUZi3pbdWzgO7zw3F5HNEt9XF6h1I1Feg3Jqhm0 lYFrMtY6oQBkBqFH5DWWzTGBxtVAbqSPPD6d951FacyWTh9w8Ijic9qyxtRaVfqRw3 wIJWqszURQ6tuXj4m77tPbgP9G8iUEtuhXhY2iJ8= Received: by b-1.in.mailobj.net [192.168.90.11] with ESMTP via ip-206.mailobj.net [213.182.55.206] Fri, 18 Feb 2022 19:34:48 +0100 (CET) X-EA-Auth: J8/HX2ZMPGgc3eck8Vin7NJtMISKGje+pPlg3oMyjR1TtddEA8+GaUmAuy/IKQxCu2lQoKhKVbLv9LrOUaAsCGL8WKMvkbyQlwp/XWZhK0A= From: nihil-admirari To: ffmpeg-devel@ffmpeg.org Date: Fri, 18 Feb 2022 21:34:32 +0300 Message-Id: <20220218183436.14050-2-nil-admirari@mailo.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20220218183436.14050-1-nil-admirari@mailo.com> References: <20220218183436.14050-1-nil-admirari@mailo.com> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH v5 2/6] libavformat/avisynth.c: Replace MAX_PATH-sized buffers with dynamically sized ones X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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" X-TUID: NA2txu8yRY3M --- libavformat/avisynth.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/libavformat/avisynth.c b/libavformat/avisynth.c index 8bc3986..219f307 100644 --- a/libavformat/avisynth.c +++ b/libavformat/avisynth.c @@ -36,6 +36,7 @@ /* Platform-specific directives. */ #ifdef _WIN32 #include "compat/w32dlfcn.h" + #include "libavutil/wchar_filename.h" #undef EXTERN_C #define AVISYNTH_LIB "avisynth" #else @@ -806,8 +807,7 @@ static int avisynth_open_file(AVFormatContext *s) AVS_Value arg, val; int ret; #ifdef _WIN32 - char filename_ansi[MAX_PATH * 4]; - wchar_t filename_wc[MAX_PATH * 4]; + char *filename_ansi = NULL; #endif if (ret = avisynth_context_create(s)) @@ -815,10 +815,12 @@ static int avisynth_open_file(AVFormatContext *s) #ifdef _WIN32 /* Convert UTF-8 to ANSI code page */ - MultiByteToWideChar(CP_UTF8, 0, s->url, -1, filename_wc, MAX_PATH * 4); - WideCharToMultiByte(CP_THREAD_ACP, 0, filename_wc, -1, filename_ansi, - MAX_PATH * 4, NULL, NULL); + if (utf8toansi(s->url, &filename_ansi)) { + ret = AVERROR_UNKNOWN; + goto fail; + } arg = avs_new_value_string(filename_ansi); + av_free(filename_ansi); #else arg = avs_new_value_string(s->url); #endif