From patchwork Wed May 11 14:48:18 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lance Wang X-Patchwork-Id: 35733 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:a885:b0:7f:4be2:bd17 with SMTP id ca5csp3934100pzb; Wed, 11 May 2022 07:49:44 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwFFGFQw+tTo81nITzYmvgV3qLdR+pdSpPBsFMdvRVf8MNqPkghHsmna4Csx+K1geTF5nDP X-Received: by 2002:a17:907:7282:b0:6fa:9365:f922 with SMTP id dt2-20020a170907728200b006fa9365f922mr10810077ejc.262.1652280583943; Wed, 11 May 2022 07:49:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1652280583; cv=none; d=google.com; s=arc-20160816; b=0pPe8LpaWit1AxjL9m4QotNygXzzBAFN4lG1pAJlDlaXSnfqjDunjDYuxz189Fuq0d CP6fMxWeAL4TACu1A4eljhBRImbeOOtla8GWdIX6q8OpujpXB4KOa+U972hGjIeYnIZR ReLvIXDIaHzYsq6veEMPMoKgmqnuRzfmpzU+eS2cCUZ+Uw72krnl0MqA1HGwCvMf66Pb 4b3M4jWXlJt4deQ7G5A327DT5TJ5bNK23v08wZCQzguZ1OlJdKWX1Pzj9aEhmLFFuJF5 A61MtwdJmeTf5jdm78WBeDKhNBJy/jCxk9FSizuoxtH7Rtbj9xUpAi3FP/btdmCftCyp cFhg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to; bh=Zo9eCBFk9/+pLUCG9+tAryXqBALDoRFISeDNcQ6E6F0=; b=SbGmxB0U1OcBkbxI9v/HlwRNAW7wvUW8AmYwcg1r7flVnocGWIFN9pRnJitEsTOsrR 2w+DElEyFAFp/+ECzJL00jl/HAtADJB9W1V+V1jdhO2VD95T8JSoXJU7qNFWFCE0wPWl dI8BrOUa/fHWWDGPim+jQUZCkHs0mFBZuWB+jQ4RGqNw6YoI2uPgNQQiaYj2j3idrMT/ vu/3w83NP3quw1jZcUmARC2v4ZVLw4S+5cxOWAExZKhxNQB0rw75xyP1bAdG2qmGtkVS yhubqrVUJ/KNoG3jUEcfupGYdtLa3781/YI75vIu8wN5C4l44oaw5aOw9eGhCSs6gfVl XvOw== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20210112 header.b="ED+/lhk+"; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id t17-20020a056402525100b00421b5d86019si213747edd.45.2022.05.11.07.49.22; Wed, 11 May 2022 07:49:43 -0700 (PDT) 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=@gmail.com header.s=20210112 header.b="ED+/lhk+"; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 83AE668B2F9; Wed, 11 May 2022 17:48:37 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-pj1-f47.google.com (mail-pj1-f47.google.com [209.85.216.47]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7E4E668B443 for ; Wed, 11 May 2022 17:48:29 +0300 (EEST) Received: by mail-pj1-f47.google.com with SMTP id n10so2436668pjh.5 for ; Wed, 11 May 2022 07:48:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=WBk+kqWjekKqi3COi7ggFtY/nxu0hDoWDiSLXyCtwJ0=; b=ED+/lhk+zWciQArakMdRkaggYsvJj3xhOXsWTPj2+NJOsVjTNLBwWiEPIr5acSe9ag c61o/2gK/n1ra2jo+3wor9AOewNlz2tSTunsKg0I24XLy6ykBqM3nrB1HDzpBKQO/OMq pBdRd+HOdrwzsRZwL5ixgLi22246ODMgiCX+j9mT72mLBy0V0aPzDtkWDLXwcagfzTtV oEb5VYZR78t+wx/KXx/JR4GqEv5mfsfoctwXRoK8xtSA2z+S90XYy6oR26WTiBFrF8On rlU9QBsTNqqrpvZs2XDfJWfD8AE8x0f3fOo1Mnfvbi4jed1P2gElmnEmR9Dws6wgbHnv DCrQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=WBk+kqWjekKqi3COi7ggFtY/nxu0hDoWDiSLXyCtwJ0=; b=uO3dfxTbeowhwK/Bm2xI3pFrqp4YKVy8UZiBiVXbtjYAAFvfGS/38hG/Nb9nOylYoJ +AYVOm7uwlJ76r7fgaqVNxBFK3vIIF8AjsrD9CFfK7LMtmRngVgS9RsBUyo5LQkbrRky ZAp6Z6U3BWqfFZEKOYeuD98tucWPVgpeF5iEQ1s0r6rKxKySw2NoDNy5zPgifNuRjAdt eyYh9K77H6x6GQmVCjhltsecJi1U+3pHKlz1pdLdwmsbkpcqJqF4lQ5TN3AbfNr63ZnP +W+F3ywgu2HUeRl4PBnnhlwRVSB05KK1lrf8zsFIRVlDEHIyWleyFotJQS+M5flUhsq2 tqeQ== X-Gm-Message-State: AOAM531CUolcrj02caSoUKnf/JPistbciblR74RcSo3UVnPmLLeQMwHr kM6vaJZDiEu4UqJCNpHwFi8Ybr0yHsk= X-Received: by 2002:a17:902:8c98:b0:15f:3e78:dc43 with SMTP id t24-20020a1709028c9800b0015f3e78dc43mr266117plo.120.1652280507833; Wed, 11 May 2022 07:48:27 -0700 (PDT) Received: from vpn2.localdomain ([161.117.202.209]) by smtp.gmail.com with ESMTPSA id n17-20020a170903111100b0015e8d4eb2c6sm2059020plh.272.2022.05.11.07.48.26 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 11 May 2022 07:48:27 -0700 (PDT) From: lance.lmwang@gmail.com To: ffmpeg-devel@ffmpeg.org Date: Wed, 11 May 2022 22:48:18 +0800 Message-Id: <1652280498-10408-4-git-send-email-lance.lmwang@gmail.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1652280498-10408-1-git-send-email-lance.lmwang@gmail.com> References: <1652280498-10408-1-git-send-email-lance.lmwang@gmail.com> Subject: [FFmpeg-devel] [PATCH 4/4] avcodec/dvdsubenc: return error if canvas_size is too small for subtitle render 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 Cc: Limin Wang MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: Uku00cZh/Eq9 From: Limin Wang Signed-off-by: Limin Wang --- libavcodec/dvdsubenc.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libavcodec/dvdsubenc.c b/libavcodec/dvdsubenc.c index fc3b7d1816..d29db7d49c 100644 --- a/libavcodec/dvdsubenc.c +++ b/libavcodec/dvdsubenc.c @@ -376,6 +376,12 @@ static int encode_dvd_subtitles(AVCodecContext *avctx, x2 = vrect.x + vrect.w - 1; y2 = vrect.y + vrect.h - 1; + if (x2 > avctx->width || y2 > avctx->height) { + av_log(avctx, AV_LOG_ERROR, "canvas_size(%d:%d) is too small(%d:%d) for render\n", + avctx->width, avctx->height, x2, y2); + ret = AVERROR(EINVAL);; + goto fail; + } *q++ = 0x05; // x1 x2 -> 6 nibbles *q++ = vrect.x >> 4;