This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit 5c07f7d8db791ef9d0f2208be3faf2328aec6ca8
Author:     Niklas Haas <[email protected]>
AuthorDate: Sun Jun 14 11:43:01 2026 +0200
Commit:     Niklas Haas <[email protected]>
CommitDate: Mon Aug 31 19:10:45 2026 +0000

    avformat/shared: early exit on prior spacemap I/O failure
    
    The code implicitly assumes that the caller won't re-call read()/seek()
    after observing a prior AVERROR(EIO). However, this is not necessarily a
    future-proof guarantee, so it's safer to explicitly re-error in this case.
    
    Sponsored-by: nxtedition AB
    Signed-off-by: Niklas Haas <[email protected]>
---
 libavformat/shared.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/libavformat/shared.c b/libavformat/shared.c
index 6e12e4f2c2..b1ca6d72f2 100644
--- a/libavformat/shared.c
+++ b/libavformat/shared.c
@@ -593,6 +593,8 @@ static int shared_read(URLContext *h, unsigned char *buf, 
int size)
     SharedContext *s = h->priv_data;
     uint8_t *tmp;
     int ret;
+    if (!s->spacemap)
+        return AVERROR(EIO);
 
     if (size <= 0)
         return 0;
@@ -846,9 +848,11 @@ read_block:
 static int64_t shared_seek(URLContext *h, int64_t pos, int whence)
 {
     SharedContext *s = h->priv_data;
-    const int64_t filesize = get_filesize(h);
     int64_t res;
+    if (!s->spacemap)
+        return AVERROR(EIO);
 
+    const int64_t filesize = get_filesize(h);
     switch (whence) {
     case AVSEEK_SIZE:
         if (filesize)

-- 
To stop receiving notification emails like this one, please contact
[email protected].
_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to