[libbluray-devel] Check realloc result.
ace20022
git at videolan.org
Tue Nov 17 08:49:31 CET 2015
libbluray | branch: master | ace20022 <ace20022 at ymail.com> | Thu Nov 12 12:36:59 2015 +0100| [1d36ee35ddfc177a0678987500a3de331645bd53] | committer: hpi1
Check realloc result.
> http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=1d36ee35ddfc177a0678987500a3de331645bd53
---
src/libbluray/bluray.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/libbluray/bluray.c b/src/libbluray/bluray.c
index b4d91a8..1aedf2c 100644
--- a/src/libbluray/bluray.c
+++ b/src/libbluray/bluray.c
@@ -798,7 +798,15 @@ static int _preload_m2ts(BLURAY *bd, BD_PRELOAD *p)
/* allocate buffer */
p->clip_size = (size_t)st.clip_size;
- p->buf = realloc(p->buf, p->clip_size);
+ uint8_t* tmp = (uint8_t*)realloc(p->buf, p->clip_size);
+ if (!tmp) {
+ BD_DEBUG(DBG_BLURAY | DBG_CRIT, "_preload_m2ts(): out of memory\n");
+ _close_m2ts(&st);
+ _close_preload(p);
+ return 0;
+ }
+
+ p->buf = tmp;
/* read clip to buffer */
More information about the libbluray-devel
mailing list