Ok, now I can“t even reproduce the "busy" screen at the top or at the bottom. Tested latest crop_rec_4k. I had it several times in the past but now stressing shooting crop_rec, mv1080 etc both mlv_lite and mlv_rec for about ten files each and all worked fine. Could alter iso, shutter etc while recording, nothing stuck. So probably the fix is active and working but I know i had the issue described with busy screen at the top several times before. I will try my best to reproduce.
Question. How to allocate manually? snippet in exmem.c:
printf("[SRM] free all buffers\n");
/* free all SRM buffers */
/* note: first buffer is use-after-free */
for (int i = 0; i < COUNT(srm_buffers); i++)
{
if (srm_buffers[i].buffer)
{
ASSERT(!srm_buffers[i].used);
if (!srm_buffers[i].use_after_free)
{
SRM_FreeMemoryResourceFor1stJob(srm_buffers[i].buffer, 0, 0);
}
srm_buffers[i].buffer = 0;
srm_buffers[i].use_after_free = 0;
}
}
srm_shutter_unlock();
srm_allocated = 0;
}
REQUIRES(mem_sem)
struct memSuite * _srm_malloc_suite(int num_requested_buffers)
{
printf("srm_malloc_suite(%d)...\n", num_requested_buffers);
/* alloc from operating system, if needed */
srm_alloc_internal();
if (num_requested_buffers == 0)
{
/* if you request 0, this means allocate as much as you can */
num_requested_buffers = COUNT(srm_buffers);
}
adding number here?
if (num_requested_buffers == 0)
or here?:
srm_allocated = 0;