On Sun, Aug 27, 2023 at 11:29 PM Andrea paz <[email protected]> wrote:
>
> In my opinion, it depends on putting the images in /tmp. When I
> changed the destination folder (/home/test) I had no more problems.
> Try setting up CinGG with a different brender destination folder; one
> that is not with root privileges.

I tried to runtime sitch brender type while using same /tmp (/dev/shm/tmp) dir.

I got few crashes.

Tried to fix two cases (tiff and png), filetga still crashes.

Can you check this patch with normal file load and also bg renders?

>
> PS: I had not responded to this request of yours:
> > Are those errors with my patch and normal single-user build, or they only 
> > appear in appimage (with my patch?)
> All those warnings are from the build with your patches. But the vaapi
> decoder works fine.
>
> The vaapi decoder failure errors only affect the appimage (from 2
> months ago --> no patch). Those numerous warnings are not present
> here, though.
From 49c26a850bc3d38053c9899c38124ca83f7fa2ba Mon Sep 17 00:00:00 2001
From: Andrew Randrianasulu <[email protected]>
Date: Sun, 27 Aug 2023 23:29:42 +0300
Subject: [PATCH] Try to return early if libtiff/libpng does not recognize file
 fix segfault with dynamic brender type switching.

Note: filetga still affected by this crash.
---
 cinelerra-5.1/cinelerra/filepng.C  | 1 +
 cinelerra-5.1/cinelerra/filetiff.C | 3 +++
 2 files changed, 4 insertions(+)

diff --git a/cinelerra-5.1/cinelerra/filepng.C b/cinelerra-5.1/cinelerra/filepng.C
index 2386068b..e79c45d5 100644
--- a/cinelerra-5.1/cinelerra/filepng.C
+++ b/cinelerra-5.1/cinelerra/filepng.C
@@ -259,6 +259,7 @@ int FilePNG::read_frame(VFrame *output, VFrame *input)
 
 	//printf("FilePNG::read_frame 1 %d %d\n", native_cmodel, output->get_color_model());
 	png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, 0, 0, 0);
+	if(!png_ptr) return 0;
 	info_ptr = png_create_info_struct(png_ptr);
 	png_set_read_fn(png_ptr, input, (png_rw_ptr)read_function);
 	png_read_info(png_ptr, info_ptr);
diff --git a/cinelerra-5.1/cinelerra/filetiff.C b/cinelerra-5.1/cinelerra/filetiff.C
index 31a4bb7b..fc24b384 100644
--- a/cinelerra-5.1/cinelerra/filetiff.C
+++ b/cinelerra-5.1/cinelerra/filetiff.C
@@ -323,6 +323,9 @@ int FileTIFF::read_frame(VFrame *output, VFrame *input)
 	    tiff_mmap,
 		tiff_unmap);
 
+	if(!stream)
+	return 0;
+
 // This loads the original TIFF data into each scanline of the output frame,
 // assuming the output scanlines are bigger than the input scanlines.
 // Then it expands the input data in reverse to fill the row.
-- 
2.35.7

-- 
Cin mailing list
[email protected]
https://lists.cinelerra-gg.org/mailman/listinfo/cin

Reply via email to