Opened 13 months ago

Last modified 5 months ago

#7358 new defect

Unable to use Lensfun

Reported by: Zeranoe Owned by:
Priority: important Component: avfilter
Version: git-master Keywords: lensfun
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

I'm unable to use Lensfun on Windows or MacOS, with MacOS throwing a malloc error:

ffmpeg(98713,0x7fff8f0ae380) malloc: *** error for object 0x7f94ebd3a600: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

Lensfun version: 20180811-3d771f6
FFmpeg version: 20180815-4f8e65c (N-91611-g4f8e65c458)

Invoking command:

./ffmpeg -v 9 -loglevel 99 -f lavfi -i testsrc=s=hd1080 -vf lensfun=make=Canon:model="Canon EOS 100D":lens_model="Canon EF-S 18-55mm f/3.5-5.6 IS STM" -c:v libx264 -y o.mkv

MacOS output:

ffmpeg version N-91611-g4f8e65c458 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
  configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-liblensfun --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-appkit --enable-avfoundation --enable-coreimage --enable-audiotoolbox
  libavutil      56. 19.100 / 56. 19.100
  libavcodec     58. 22.101 / 58. 22.101
  libavformat    58. 17.101 / 58. 17.101
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 26.100 /  7. 26.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'lavfi'.
Reading option '-i' ... matched as input url with argument 'testsrc=s=hd1080'.
Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'lensfun=make=Canon:model=Canon EOS 100D:lens_model=Canon EF-S 18-55mm f/3.5-5.6 IS STM'.
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'libx264'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option 'o.mkv' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url testsrc=s=hd1080.
Applying option f (force format) with argument lavfi.
Successfully parsed a group of options.
Opening an input file: testsrc=s=hd1080.
detected 4 logical cores
[Parsed_testsrc_0 @ 0x7f94ebd01280] Setting 's' to value 'hd1080'
[Parsed_testsrc_0 @ 0x7f94ebd01280] size:1920x1080 rate:25/1 duration:-1.000000 sar:1/1
[AVFilterGraph @ 0x7f94ebd00a40] query_formats: 2 queried, 1 merged, 0 already done, 0 delayed
[lavfi @ 0x7f94ec000000] All info found
[lavfi @ 0x7f94ec000000] stream 0: start_time: 0.000 duration: -368934881474191040.000
[lavfi @ 0x7f94ec000000] format: start_time: 0.000 duration: -9223372036854.775 bitrate=0 kb/s
Input #0, lavfi, from 'testsrc=s=hd1080':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0, 1, 1/25: Video: rawvideo, 1 reference frame (RGB[24] / 0x18424752), rgb24, 1920x1080 [SAR 1:1 DAR 16:9], 0/1, 25 tbr, 25 tbn, 25 tbc
Successfully opened the file.
Parsing a group of options: output url o.mkv.
Applying option vf (set video filters) with argument lensfun=make=Canon:model=Canon EOS 100D:lens_model=Canon EF-S 18-55mm f/3.5-5.6 IS STM.
Applying option c:v (codec name) with argument libx264.
Successfully parsed a group of options.
Opening an output file: o.mkv.
[file @ 0x7f94ebc00dc0] Setting default whitelist 'file,crypto'
Successfully opened the file.
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[rawvideo @ 0x7f94ec004800] PACKET SIZE: 6220800, STRIDE: 5760
[Parsed_lensfun_0 @ 0x7f94ebd02d40] Setting 'make' to value 'Canon'
[Parsed_lensfun_0 @ 0x7f94ebd02d40] Setting 'model' to value 'Canon EOS 100D'
[Parsed_lensfun_0 @ 0x7f94ebd02d40] Setting 'lens_model' to value 'Canon EF-S 18-55mm f/3.5-5.6 IS STM'
[Parsed_lensfun_0 @ 0x7f94ebd02d40] Using camera Canon EOS 100D
[Parsed_lensfun_0 @ 0x7f94ebd02d40] Using lens Canon EF-S 18-55mm f/3.5-5.6 IS STM
ffmpeg(98713,0x7fff8f0ae380) malloc: *** error for object 0x7f94ebd3a600: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

Windows output (no error, just quits):

ffmpeg version N-91611-g4f8e65c458 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 8.2.1 (GCC) 20180813
  configuration: --disable-static --enable-shared --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-liblensfun --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-amf --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth
  libavutil      56. 19.100 / 56. 19.100
  libavcodec     58. 22.101 / 58. 22.101
  libavformat    58. 17.101 / 58. 17.101
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 26.100 /  7. 26.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-f' ... matched as option 'f' (force format) with argument 'lavfi'.
Reading option '-i' ... matched as input url with argument 'testsrc=s=hd1080'.
Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'lensfun=make=Canon:model=Canon EOS 100D:lens_model=Canon EF-S 18-55mm f/3.5-5.6 IS STM'.
Reading option '-c:v' ... matched as option 'c' (codec name) with argument 'libx264'.
Reading option '-y' ... matched as option 'y' (overwrite output files) with argument '1'.
Reading option 'o.mkv' ... matched as output url.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Applying option y (overwrite output files) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input url testsrc=s=hd1080.
Applying option f (force format) with argument lavfi.
Successfully parsed a group of options.
Opening an input file: testsrc=s=hd1080.
detected 8 logical cores
[Parsed_testsrc_0 @ 000002265e6de040] Setting 's' to value 'hd1080'
[Parsed_testsrc_0 @ 000002265e6de040] size:1920x1080 rate:25/1 duration:-1.000000 sar:1/1
[AVFilterGraph @ 000002265e6ddc40] query_formats: 2 queried, 1 merged, 0 already done, 0 delayed
[lavfi @ 000002265e6dc900] All info found
[lavfi @ 000002265e6dc900] stream 0: start_time: 0.000 duration: -368934881474191040.000
[lavfi @ 000002265e6dc900] format: start_time: 0.000 duration: -9223372036854.775 bitrate=0 kb/s
Input #0, lavfi, from 'testsrc=s=hd1080':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0, 1, 1/25: Video: rawvideo, 1 reference frame (RGB[24] / 0x18424752), rgb24, 1920x1080 [SAR 1:1 DAR 16:9], 0/1, 25 tbr, 25 tbn, 25 tbc
Successfully opened the file.
Parsing a group of options: output url o.mkv.
Applying option vf (set video filters) with argument lensfun=make=Canon:model=Canon EOS 100D:lens_model=Canon EF-S 18-55mm f/3.5-5.6 IS STM.
Applying option c:v (codec name) with argument libx264.
Successfully parsed a group of options.
Opening an output file: o.mkv.
[file @ 000002265e6e7240] Setting default whitelist 'file,crypto'
Successfully opened the file.
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> h264 (libx264))
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
[rawvideo @ 000002265e6e4500] PACKET SIZE: 6220800, STRIDE: 5760
[Parsed_lensfun_0 @ 000002265e6d4100] Setting 'make' to value 'Canon'
[Parsed_lensfun_0 @ 000002265e6d4100] Setting 'model' to value 'Canon EOS 100D'
[Parsed_lensfun_0 @ 000002265e6d4100] Setting 'lens_model' to value 'Canon EF-S 18-55mm f/3.5-5.6 IS STM'

I can provide debug information if needed.

Change History (5)

comment:1 follow-up: Changed 13 months ago by cehoyos

Is the issue reproducible with the following command line?

$ ffmpeg -f lavfi -i testsrc=s=hd1080 -vf lensfun=make=Canon:model="Canon EOS 100D":lens_model="Canon EF-S 18-55mm f/3.5-5.6 IS STM" -f null -

If there is more debug information, please provide it.

comment:2 in reply to: ↑ 1 Changed 13 months ago by Zeranoe

Replying to cehoyos:

Is the issue reproducible with the following command line?

$ ffmpeg -f lavfi -i testsrc=s=hd1080 -vf lensfun=make=Canon:model="Canon EOS 100D":lens_model="Canon EF-S 18-55mm f/3.5-5.6 IS STM" -f null -

Yes:

ffmpeg version N-91626-gf631c328e6 Copyright (c) 2000-2018 the FFmpeg developers
  built with Apple LLVM version 9.1.0 (clang-902.0.39.2)
  configuration: --enable-gpl --enable-version3 --enable-liblensfun --disable-optimizations --disable-stripping --disable-pthreads --disable-os2threads --disable-w32threads --disable-doc
  libavutil      56. 19.100 / 56. 19.100
  libavcodec     58. 23.100 / 58. 23.100
  libavformat    58. 17.101 / 58. 17.101
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 26.100 /  7. 26.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
[rawvideo @ 0x7f7f40801000] Warning: not compiled with thread support, using thread emulation
Input #0, lavfi, from 'testsrc=s=hd1080':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 1920x1080 [SAR 1:1 DAR 16:9], 25 tbr, 25 tbn, 25 tbc
[rawvideo @ 0x7f7f41000000] Warning: not compiled with thread support, using thread emulation
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> wrapped_avframe (native))
Press [q] to stop, [?] for help
[Parsed_lensfun_0 @ 0x7f7f3fe03d00] Using camera Canon EOS 100D
[Parsed_lensfun_0 @ 0x7f7f3fe03d00] Using lens Canon EF-S 18-55mm f/3.5-5.6 IS STM
ffmpeg(65374,0x7fff8f0ae380) malloc: *** error for object 0x7f7f3fd83000: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

Here's a backtrace:

warning: could not execute support code to read Objective-C class data in the process. This may reduce the quality of type information available.
* thread #1, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
  * frame #0: 0x00007fff566eab66 libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x00007fff568b5080 libsystem_pthread.dylib`pthread_kill + 333
    frame #2: 0x00007fff566461ae libsystem_c.dylib`abort + 127
    frame #3: 0x00007fff56744822 libsystem_malloc.dylib`free + 521
    frame #4: 0x00000001015a26ad ffmpeg_g`lfLens::~lfLens(this=0x0000000102a4e1d0) at lens.cpp:53
    frame #5: 0x00000001015a2755 ffmpeg_g`lfLens::~lfLens(this=0x0000000102a4e1d0) at lens.cpp:45
    frame #6: 0x000000010158d513 ffmpeg_g`lfDatabase::~lfDatabase(this=0x0000000102d00dd0) at database.cpp:53
    frame #7: 0x000000010158d5b5 ffmpeg_g`lfDatabase::~lfDatabase(this=0x0000000102d00dd0) at database.cpp:44
    frame #8: 0x000000010158d647 ffmpeg_g`lfDatabase::Destroy(this=0x0000000102d00dd0) at database.cpp:63
    frame #9: 0x0000000101597035 ffmpeg_g`::lf_db_destroy(db=0x0000000102d00dd0) at database.cpp:1565
    frame #10: 0x00000001001ec73e ffmpeg_g`init(ctx=0x0000000102d00a40) at vf_lensfun.c:182
    frame #11: 0x00000001000ba519 ffmpeg_g`avfilter_init_dict(ctx=0x0000000102d00a40, options=0x00007ffeefbfe2e0) at avfilter.c:917
    frame #12: 0x00000001000baa91 ffmpeg_g`avfilter_init_str(filter=0x0000000102d00a40, args="make=Canon:model=Canon EOS 100D:lens_model=Canon EF-S 18-55mm f/3.5-5.6 IS STM") at avfilter.c:1018
    frame #13: 0x00000001000fcbef ffmpeg_g`create_filter(filt_ctx=0x00007ffeefbfe428, ctx=0x0000000102d00880, index=0, name="lensfun", args="make=Canon:model=Canon EOS 100D:lens_model=Canon EF-S 18-55mm f/3.5-5.6 IS STM", log_ctx=0x0000000102d00880) at graphparser.c:149
    frame #14: 0x00000001000fbd2b ffmpeg_g`parse_filter(filt_ctx=0x00007ffeefbfe428, buf=0x00007ffeefbfe468, graph=0x0000000102d00880, index=0, log_ctx=0x0000000102d00880) at graphparser.c:192
    frame #15: 0x00000001000fb86c ffmpeg_g`avfilter_graph_parse2(graph=0x0000000102d00880, filters="", inputs=0x00007ffeefbfe578, outputs=0x00007ffeefbfe570) at graphparser.c:427
    frame #16: 0x000000010001264e ffmpeg_g`configure_filtergraph(fg=0x0000000102b0c480) at ffmpeg_filter.c:1048
    frame #17: 0x00000001000309f7 ffmpeg_g`ifilter_send_frame(ifilter=0x0000000102b0c5c0, frame=0x0000000102d003c0) at ffmpeg.c:2187
    frame #18: 0x00000001000304e7 ffmpeg_g`send_frame_to_filters(ist=0x0000000102b0c1c0, decoded_frame=0x0000000102d003c0) at ffmpeg.c:2268
    frame #19: 0x000000010002f5bf ffmpeg_g`decode_video(ist=0x0000000102b0c1c0, pkt=0x00007ffeefbfec90, got_output=0x00007ffeefbfec6c, duration_pts=0x00007ffeefbfec70, eof=0, decode_failed=0x00007ffeefbfec68) at ffmpeg.c:2469
    frame #20: 0x00000001000230d0 ffmpeg_g`process_input_packet(ist=0x0000000102b0c1c0, pkt=0x00007ffeefbff0f0, no_eof=0) at ffmpeg.c:2623
    frame #21: 0x000000010002a840 ffmpeg_g`process_input(file_index=0) at ffmpeg.c:4505
    frame #22: 0x0000000100021ab3 ffmpeg_g`transcode_step at ffmpeg.c:4625
    frame #23: 0x000000010001f93b ffmpeg_g`transcode at ffmpeg.c:4679
    frame #24: 0x000000010001ec82 ffmpeg_g`main(argc=10, argv=0x00007ffeefbffa08) at ffmpeg.c:4886
    frame #25: 0x00007fff5659a015 libdyld.dylib`start + 1
    frame #26: 0x00007fff5659a015 libdyld.dylib`start + 1

lens.cpp:53 is part of the lfLens object destructor, so maybe it's on Lensfun's end.

Last edited 13 months ago by Zeranoe (previous) (diff)

comment:3 Changed 13 months ago by cehoyos

valgrind shows an invalid read here, I don't know if this is the same issue:

$ valgrind ./ffmpeg_g -f lavfi -i testsrc=s=hd1080 -vf lensfun=make=Canon:model="Canon EOS 100D":lens_model="Canon EF-S 18-55mm f/3.5-5.6 IS STM" -f null -vframes 1 -
==27437== Memcheck, a memory error detector
==27437== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==27437== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
==27437== Command: ./ffmpeg_g -f lavfi -i testsrc=s=hd1080 -vf lensfun=make=Canon:model=Canon\ EOS\ 100D:lens_model=Canon\ EF-S\ 18-55mm\ f/3.5-5.6\ IS\ STM -f null -vframes 1 -
==27437==
ffmpeg version N-91646-g78d4b6b Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 6.4.0 (GCC)
  configuration: --enable-gpl --enable-gnutls --enable-libxml2 --enable-liblensfun --enable-version3
  libavutil      56. 19.100 / 56. 19.100
  libavcodec     58. 23.100 / 58. 23.100
  libavformat    58. 17.103 / 58. 17.103
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 26.100 /  7. 26.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
Input #0, lavfi, from 'testsrc=s=hd1080':
  Duration: N/A, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (RGB[24] / 0x18424752), rgb24, 1920x1080 [SAR 1:1 DAR 16:9], 25 tbr, 25 tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> wrapped_avframe (native))
Press [q] to stop, [?] for help
==27437== Invalid read of size 8
==27437==    at 0x7C0F26D: _wordcopy_fwd_dest_aligned (in /lib64/libc-2.15.so)
==27437==    by 0x7C08E89: __GI_memmove (in /lib64/libc-2.15.so)
==27437==    by 0x7C4400D: re_string_reconstruct (in /lib64/libc-2.15.so)
==27437==    by 0x7C4D8B8: re_search_internal (in /lib64/libc-2.15.so)
==27437==    by 0x7C502E4: regexec@@GLIBC_2.3.4 (in /lib64/libc-2.15.so)
==27437==    by 0x68BA86D: _lf_parse_lens_name(char const*, float&, float&, float&) (lens.cpp:77)
==27437==    by 0x68BB1B8: lfLens::GuessParameters() (lens.cpp:214)
==27437==    by 0x68BB68F: lfLens::Check() (lens.cpp:299)
==27437==    by 0x68B78E8: _xml_end_element(_GMarkupParseContext*, char const*, void*, _GError**) (database.cpp:581)
==27437==    by 0x837F4F7: g_markup_parse_context_parse (in /usr/lib64/libglib-2.0.so.0.3200.4)
==27437==    by 0x68B817C: lfDatabase::Load(char const*, char const*, unsigned long) (database.cpp:755)
==27437==    by 0x68B5612: lfDatabase::Load(char const*) (database.cpp:138)
==27437==  Address 0x9932a18 is 24 bytes inside a block of size 30 alloc'd
==27437==    at 0x4C2ABED: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==27437==    by 0x4C2AD6F: realloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==27437==    by 0x7C43003: re_string_realloc_buffers (in /lib64/libc-2.15.so)
==27437==    by 0x7C4D559: re_search_internal (in /lib64/libc-2.15.so)
==27437==    by 0x7C502E4: regexec@@GLIBC_2.3.4 (in /lib64/libc-2.15.so)
==27437==    by 0x68BA86D: _lf_parse_lens_name(char const*, float&, float&, float&) (lens.cpp:77)
==27437==    by 0x68BB1B8: lfLens::GuessParameters() (lens.cpp:214)
==27437==    by 0x68BB68F: lfLens::Check() (lens.cpp:299)
==27437==    by 0x68B78E8: _xml_end_element(_GMarkupParseContext*, char const*, void*, _GError**) (database.cpp:581)
==27437==    by 0x837F4F7: g_markup_parse_context_parse (in /usr/lib64/libglib-2.0.so.0.3200.4)
==27437==    by 0x68B817C: lfDatabase::Load(char const*, char const*, unsigned long) (database.cpp:755)
==27437==    by 0x68B5612: lfDatabase::Load(char const*) (database.cpp:138)
==27437==
[Parsed_lensfun_0 @ 0x98f7ec0] Using camera Canon EOS 100D
[Parsed_lensfun_0 @ 0x98f7ec0] Using lens Canon EF-S 18-55mm f/3.5-5.6 IS STM
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf58.17.103
    Stream #0:0: Video: wrapped_avframe, rgb24, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
    Metadata:
      encoder         : Lavc58.23.100 wrapped_avframe
frame=    1 fps=0.2 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=0.00605x
video:1kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
==27437==
==27437== HEAP SUMMARY:
==27437==     in use at exit: 30,766 bytes in 69 blocks
==27437==   total heap usage: 50,934 allocs, 50,865 frees, 43,792,462 bytes allocated
==27437==
==27437== LEAK SUMMARY:
==27437==    definitely lost: 116 bytes in 2 blocks
==27437==    indirectly lost: 240 bytes in 10 blocks
==27437==      possibly lost: 2,944 bytes in 8 blocks
==27437==    still reachable: 27,466 bytes in 49 blocks
==27437==         suppressed: 0 bytes in 0 blocks
==27437== Rerun with --leak-check=full to see details of leaked memory
==27437==
==27437== For counts of detected and suppressed errors, rerun with: -v
==27437== ERROR SUMMARY: 443 errors from 1 contexts (suppressed: 2 from 2)

All leaks are within the library, I tested lensfun 0.3.2.

comment:4 Changed 9 months ago by LigH

In the meantime, ffmpeg does not even configure with liblensfun 0.3.95.0 anymore.

The end of config.log contains a few hints:

warning: 'lf_db_new' is deprecated [-Wdeprecated-declarations]

include/lensfun/lensfun.h:2057:34: note: declared here
 DEPRECATED LF_EXPORT lfDatabase *lf_db_new (void);

Looks to me like a completely different API is now preferred?!

comment:5 Changed 5 months ago by richardpl

No, it configures and compiles and works here (latest git version) just fine.

Note: See TracTickets for help on using tickets.