On Thu, Oct 16, 2014 at 5:14 PM, Dan Dennedy <d...@dennedy.org> wrote: > > On Thu, Oct 16, 2014 at 4:04 PM, j-b-m <j-...@users.sourceforge.net> wrote: > > > > On Wednesday 15 October 2014 23.21:53 GitHub wrote: > > > Branch: refs/heads/master > > > Home: https://github.com/mltframework/mlt > > > Commit: 0036f0d3ef40230cbe4a9e4970383b0a67e70873 > > > > > > https://github.com/mltframework/mlt/commit/0036f0d3ef40230cbe4a9e4970383b0a > > > 67e70873 Author: Dan Dennedy <d...@dennedy.org> > > > Date: 2014-10-15 (Wed, 15 Oct 2014) > > > > > > Changed paths: > > > M src/modules/sdl/consumer_sdl.c > > > > Hi all, > > > > The last part of this change: > > > > + int size = mlt_image_format_size( vfmt, > > width, height, NULL ); > > if ( image != NULL ) > > - memcpy( self->buffer, image, width > > * height * 2 ); > > + memcpy( self->buffer, image, size ); > > > > crashes Kdenlive with a memcopy error. > > Previously the image size was calculated like this: > > > > memcpy( self->buffer, image, width * height * 2 ); > > > > Now that we use mlt_image_format, the size is different because in > > mlt_image_format_size (mlt_frame.c), we have this: > > (..) > > height += 1; > > (..) > > return width * height * 2; > > I have never been very happy with this height + 1 kludge. Do you > recall anything about why that was done? I vaguely recall it was to > safely allow some image processing routines to read beyond the end of > a buffer, perhaps for interpolation. I would have to do a lot of > searching old commit messages and e-mails to be diligent about > understanding it. I am inclined to remove that nonsense and do some > testing and subsequent bug fixing where needed. In the short term, we > can pass height - 1 on that call in consumer_sdl.c.
FYi, here is my commit from Feb. 2004 that started this +1 madness! https://github.com/mltframework/mlt/commit/74268cd86c30a0af9f03981c799aa4bba253c6e9 I tried to locate an old email from archives - both personal and SourceForge mailing list - about this, but I could not find anything. It might be related to the implementation of the old gtk2scale filter. Anyways, the quick fix is in, and I made all of the changes to remove (height + 1) and will testing them for a while in a local branch. -- +-DRD-+ ------------------------------------------------------------------------------ Comprehensive Server Monitoring with Site24x7. Monitor 10 servers for $9/Month. Get alerted through email, SMS, voice calls or mobile push notifications. Take corrective actions from your mobile device. http://p.sf.net/sfu/Zoho _______________________________________________ Mlt-devel mailing list Mlt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mlt-devel