diff --git a/static/reports/clang/master/index.html b/static/reports/clang/master/index.html index ff9b4d9f8..314f80e7b 100644 --- a/static/reports/clang/master/index.html +++ b/static/reports/clang/master/index.html @@ -1,321 +1,318 @@ -digiKam-master-rev-9cf8c3034d +digiKam-master-rev-4ff64cd3d5 -

digiKam-master-rev-9cf8c3034d

+

digiKam-master-rev-4ff64cd3d5

- - - + + + - +
User:gilles@localhost
Working Directory:/mnt/devel/GIT/7.x/build.scan
Command Line:make -j7
User:gilles@localhost.localdomain
Working Directory:/home/gilles/Documents/GIT/7.x/build.scan
Command Line:make -j3
Clang Version:clang version 8.0.0 (Mageia 8.0.0-1.mga7)
Date:Fri May 22 22:23:29 2020
Date:Thu May 28 13:21:09 2020

Bug Summary

- + - +
Bug TypeQuantityDisplay?
All Bugs5
All Bugs4
API
Argument with 'nonnull' attribute passed null1
Dead store
Dead assignment1
Dead increment1
Dead initialization1
Logic error
Assigned value is garbage or undefined1
Branch condition evaluates to a garbage value1
Called C++ object pointer is null1
Dereference of null pointer1
Division by zero1
Result of operation is garbage or undefined1
Returning null reference1
Stack address stored into global variable1
Uninitialized argument value1
Memory error
Bad deallocator1
Memory leak1
Use of zero allocated1
Use-after-free3
Use-after-free2

Reports

- - + + - - + + - - - - + + - - - + +
Bug Group Bug Type ▾ File Function/Method Line Path Length
Memory errorBad deallocatorusr/lib64/qt5/include/QtCore/qscopedpointer.hcleanup605View Report
Memory errorBad deallocatorusr/lib64/qt5/include/QtCore/qscopedpointer.hcleanup605View Report
Memory errorMemory leakusr/lib64/qt5/include/QtTest/qtestcase.hqCompare3599View Report
Memory errorMemory leakusr/lib64/qt5/include/QtTest/qtestcase.hqCompare3599View Report
Memory errorUse-after-freeusr/lib64/qt5/include/QtCore/qshareddata.hconstData8329View Report
Memory errorUse-after-freeusr/lib64/qt5/include/QtCore/qshareddata.hoperator->15910View Report
Memory errorUse-after-freeusr/lib64/qt5/include/QtCore/qshareddata.hoperator->15910View Report
Memory errorUse-after-freemnt/devel/GIT/7.x/core/libs/dimg/dimg_data.cppputImageData969View Report
Memory errorUse-after-freeusr/lib64/qt5/include/QtCore/qshareddata.hconstData8329View Report
diff --git a/static/reports/clang/master/report-750941.html b/static/reports/clang/master/report-66f7e4.html similarity index 83% rename from static/reports/clang/master/report-750941.html rename to static/reports/clang/master/report-66f7e4.html index 015fa5a3a..8af2fc145 100644 --- a/static/reports/clang/master/report-750941.html +++ b/static/reports/clang/master/report-66f7e4.html @@ -1,1244 +1,1244 @@ /usr/lib64/qt5/include/QtCore/qshareddata.h

Bug Summary

File:usr/lib64/qt5/include/QtCore/qshareddata.h
Warning:line 83, column 41
Use of memory after it is freed

Annotated Source Code

Press '?' to see keyboard shortcuts

-
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name itemtagpair.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_USE_QSTRINGBUILDER -D TRANSLATION_DOMAIN="digikam" -D UNIX_ENV=1 -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -D digikamdatabase_EXPORTS -D qDNGLittleEndian -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/7.x/build.scan/core/libs/database -I /mnt/devel/GIT/7.x/core/libs/database -I /mnt/devel/GIT/7.x/build.scan/core/libs/database/digikamdatabase_obj_autogen/include -I /mnt/devel/GIT/7.x/core/app/date -I /mnt/devel/GIT/7.x/core/app/dragdrop -I /mnt/devel/GIT/7.x/core/app/filters -I /mnt/devel/GIT/7.x/core/app/items/delegate -I /mnt/devel/GIT/7.x/core/app/items/overlays -I /mnt/devel/GIT/7.x/core/app/items/thumbbar -I /mnt/devel/GIT/7.x/core/app/items/utils -I /mnt/devel/GIT/7.x/core/app/items/views -I /mnt/devel/GIT/7.x/core/app/main -I /mnt/devel/GIT/7.x/core/app/utils -I /mnt/devel/GIT/7.x/core/app/views/preview -I /mnt/devel/GIT/7.x/core/app/views/sidebar -I /mnt/devel/GIT/7.x/core/app/views/stack -I /mnt/devel/GIT/7.x/core/app/views/tableview -I /mnt/devel/GIT/7.x/core/app/views/utils -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/7.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/7.x/core/dplugins/dimg/png -I /mnt/devel/GIT/7.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/7.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/7.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/7.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/7.x/core/libs/album/engine -I /mnt/devel/GIT/7.x/core/libs/album/manager -I /mnt/devel/GIT/7.x/core/libs/album/treeview -I /mnt/devel/GIT/7.x/core/libs/album/widgets -I /mnt/devel/GIT/7.x/core/libs/database/collection -I /mnt/devel/GIT/7.x/core/libs/database/coredb -I /mnt/devel/GIT/7.x/core/libs/database/dbjobs -I /mnt/devel/GIT/7.x/core/libs/database/engine -I /mnt/devel/GIT/7.x/core/libs/database/haar -I /mnt/devel/GIT/7.x/core/libs/database/history -I /mnt/devel/GIT/7.x/core/libs/database/item/containers -I /mnt/devel/GIT/7.x/core/libs/database/item/lister -I /mnt/devel/GIT/7.x/core/libs/database/item/query -I /mnt/devel/GIT/7.x/core/libs/database/item/scanner -I /mnt/devel/GIT/7.x/core/libs/database/models -I /mnt/devel/GIT/7.x/core/libs/database/server -I /mnt/devel/GIT/7.x/core/libs/database/similaritydb -I /mnt/devel/GIT/7.x/core/libs/database/tags -I /mnt/devel/GIT/7.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/7.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/7.x/core/libs/database/utils/scan -I /mnt/devel/GIT/7.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/7.x/core/libs/dialogs -I /mnt/devel/GIT/7.x/core/libs/dimg/color -I /mnt/devel/GIT/7.x/core/libs/dimg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/7.x/core/libs/dimg/filters -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/raw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/7.x/core/libs/dimg/history -I /mnt/devel/GIT/7.x/core/libs/dimg/loaders -I /mnt/devel/GIT/7.x/core/libs/dngwriter -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/7.x/core/libs/dplugins/core -I /mnt/devel/GIT/7.x/core/libs/dplugins/iface -I /mnt/devel/GIT/7.x/core/libs/dplugins/setup -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/7.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/7.x/core/libs/dragdrop -I /mnt/devel/GIT/7.x/core/libs/dtrash -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/7.x/core/libs/facesengine/common -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition -I /mnt/devel/GIT/7.x/core/libs/fileactionmanager -I /mnt/devel/GIT/7.x/core/libs/filters -I /mnt/devel/GIT/7.x/core/libs/iojobs -I /mnt/devel/GIT/7.x/core/libs/jpegutils -I /mnt/devel/GIT/7.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/7.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/7.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/7.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/7.x/core/libs/models -I /mnt/devel/GIT/7.x/core/libs/notificationmanager -I /mnt/devel/GIT/7.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/7.x/core/libs/pgfutils -I /mnt/devel/GIT/7.x/core/libs/progressmanager -I /mnt/devel/GIT/7.x/core/libs/properties/captions -I /mnt/devel/GIT/7.x/core/libs/properties/geolocation -I /mnt/devel/GIT/7.x/core/libs/properties/history -I /mnt/devel/GIT/7.x/core/libs/properties/import -I /mnt/devel/GIT/7.x/core/libs/properties -I /mnt/devel/GIT/7.x/core/libs/rawengine -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/7.x/core/libs/settings -I /mnt/devel/GIT/7.x/core/libs/tags/engine -I /mnt/devel/GIT/7.x/core/libs/tags/manager/models -I /mnt/devel/GIT/7.x/core/libs/tags/manager -I /mnt/devel/GIT/7.x/core/libs/tags/widgets -I /mnt/devel/GIT/7.x/core/libs/template -I /mnt/devel/GIT/7.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/7.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/7.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/7.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/7.x/core/libs/threadimageio/video -I /mnt/devel/GIT/7.x/core/libs/threads -I /mnt/devel/GIT/7.x/core/libs/timeadjust -I /mnt/devel/GIT/7.x/core/libs/transitionmngr -I /mnt/devel/GIT/7.x/core/libs/versionmanager -I /mnt/devel/GIT/7.x/core/libs/video/manager -I /mnt/devel/GIT/7.x/core/libs/video/player -I /mnt/devel/GIT/7.x/core/libs/widgets/colors -I /mnt/devel/GIT/7.x/core/libs/widgets/combo -I /mnt/devel/GIT/7.x/core/libs/widgets/files -I /mnt/devel/GIT/7.x/core/libs/widgets/fonts -I /mnt/devel/GIT/7.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/7.x/core/libs/widgets/history -I /mnt/devel/GIT/7.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/7.x/core/libs/widgets/itemview -I /mnt/devel/GIT/7.x/core/libs/widgets/layout -I /mnt/devel/GIT/7.x/core/libs/widgets/mainview -I /mnt/devel/GIT/7.x/core/libs/widgets/metadata -I /mnt/devel/GIT/7.x/core/libs/widgets/range -I /mnt/devel/GIT/7.x/core/libs/widgets/text -I /mnt/devel/GIT/7.x/core/showfoto/main -I /mnt/devel/GIT/7.x/core/showfoto/setup -I /mnt/devel/GIT/7.x/core/showfoto/thumbbar -I /mnt/devel/GIT/7.x/core/tests/advancedrename -I /mnt/devel/GIT/7.x/core/tests/albummodel -I /mnt/devel/GIT/7.x/core/tests/database -I /mnt/devel/GIT/7.x/core/tests/dimg -I /mnt/devel/GIT/7.x/core/tests/facesengine/demo -I /mnt/devel/GIT/7.x/core/tests/facesengine -I /mnt/devel/GIT/7.x/core/tests/fileio -I /mnt/devel/GIT/7.x/core/tests/geolocation/editor -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/7.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/7.x/core/tests/imgqsort -I /mnt/devel/GIT/7.x/core/tests/iojobs -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/editsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/fakeserver -I /mnt/devel/GIT/7.x/core/tests/metadataengine -I /mnt/devel/GIT/7.x/core/tests/modeltest -I /mnt/devel/GIT/7.x/core/tests/multithreading -I /mnt/devel/GIT/7.x/core/tests/timestampupdate -I /mnt/devel/GIT/7.x/core/tests/vkontakte -I /mnt/devel/GIT/7.x/core/tests/widgets -I /mnt/devel/GIT/7.x/core/utilities/advancedrename -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/bench -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/database -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/items -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/threads -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/widgets -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/workers -I /mnt/devel/GIT/7.x/core/utilities/firstrun -I /mnt/devel/GIT/7.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/7.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/7.x/core/utilities/import/backend -I /mnt/devel/GIT/7.x/core/utilities/import/dialogs -I /mnt/devel/GIT/7.x/core/utilities/import/items -I /mnt/devel/GIT/7.x/core/utilities/import/main -I /mnt/devel/GIT/7.x/core/utilities/import/models -I /mnt/devel/GIT/7.x/core/utilities/import/views -I /mnt/devel/GIT/7.x/core/utilities/import/widgets -I /mnt/devel/GIT/7.x/core/utilities/lighttable -I /mnt/devel/GIT/7.x/core/utilities/maintenance -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/7.x/core/utilities/searchwindow -I /mnt/devel/GIT/7.x/core/utilities/setup/album -I /mnt/devel/GIT/7.x/core/utilities/setup/camera -I /mnt/devel/GIT/7.x/core/utilities/setup/collections -I /mnt/devel/GIT/7.x/core/utilities/setup/editor -I /mnt/devel/GIT/7.x/core/utilities/setup/metadata -I /mnt/devel/GIT/7.x/core/utilities/setup -I /mnt/devel/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/7.x/build.scan/core/app/utils -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -I /usr/lib64/qt5/include -I /usr/lib64/qt5/include/QtXml -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtSql -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/include/KF5/Solid -I /usr/include/KF5 -I /usr/include/KF5/KI18n -I /usr/include/KF5/KConfigCore -I /usr/include/KF5/KCoreAddons -I /usr/include/KF5/KWidgetsAddons -I /usr/include/KF5/KXmlGui -I /usr/include/KF5/KConfigWidgets -I /usr/include/KF5/KCodecs -I /usr/include/KF5/KConfigGui -I /usr/include/KF5/KAuth -I /usr/lib64/qt5/include/QtDBus -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/7.x/build.scan/core/libs/database -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/7.x/project/reports/report.scan/2020-05-22-222329-1869-1 -x c++ /mnt/devel/GIT/7.x/core/libs/database/item/containers/itemtagpair.cpp -faddrsig +
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name itemtagpair.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_USE_QSTRINGBUILDER -D TRANSLATION_DOMAIN="digikam" -D UNIX_ENV=1 -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -D digikamdatabase_EXPORTS -D qDNGLittleEndian -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget -D qMacOS=0 -D qWinOS=0 -I /home/gilles/Documents/GIT/7.x/build.scan/core/libs/database -I /home/gilles/Documents/GIT/7.x/core/libs/database -I /home/gilles/Documents/GIT/7.x/build.scan/core/libs/database/digikamdatabase_obj_autogen/include -I /home/gilles/Documents/GIT/7.x/core/app/date -I /home/gilles/Documents/GIT/7.x/core/app/dragdrop -I /home/gilles/Documents/GIT/7.x/core/app/filters -I /home/gilles/Documents/GIT/7.x/core/app/items/delegate -I /home/gilles/Documents/GIT/7.x/core/app/items/overlays -I /home/gilles/Documents/GIT/7.x/core/app/items/thumbbar -I /home/gilles/Documents/GIT/7.x/core/app/items/utils -I /home/gilles/Documents/GIT/7.x/core/app/items/views -I /home/gilles/Documents/GIT/7.x/core/app/main -I /home/gilles/Documents/GIT/7.x/core/app/utils -I /home/gilles/Documents/GIT/7.x/core/app/views/preview -I /home/gilles/Documents/GIT/7.x/core/app/views/sidebar -I /home/gilles/Documents/GIT/7.x/core/app/views/stack -I /home/gilles/Documents/GIT/7.x/core/app/views/tableview -I /home/gilles/Documents/GIT/7.x/core/app/views/utils -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/invert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/custom/userscript -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/decorate/border -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/blur -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/crop -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/flip -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/resize -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/rotate -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libheif -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/imagemagick -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/jpeg -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/pgf -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/png -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/qimage -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/raw -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/tiff -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/bcg -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/film -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/hsl -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/invert -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/border -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/texture -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/blur -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/redeye -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/restoration -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/file/print -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/blurfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/charcoal -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/colorfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/emboss -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/raindrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/autocrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/freerotation -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/perspective -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/resize -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/shear -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/import/dscanner -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/glviewer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/common -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/box -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/facebook -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/flickr -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/imgur -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/rajce -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/twitter -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend/attic -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend/deprecated -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/darktable -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/native -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/ufraw -I /home/gilles/Documents/GIT/7.x/core/libs/album/engine -I /home/gilles/Documents/GIT/7.x/core/libs/album/manager -I /home/gilles/Documents/GIT/7.x/core/libs/album/treeview -I /home/gilles/Documents/GIT/7.x/core/libs/album/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/database/collection -I /home/gilles/Documents/GIT/7.x/core/libs/database/coredb -I /home/gilles/Documents/GIT/7.x/core/libs/database/dbjobs -I /home/gilles/Documents/GIT/7.x/core/libs/database/engine -I /home/gilles/Documents/GIT/7.x/core/libs/database/haar -I /home/gilles/Documents/GIT/7.x/core/libs/database/history -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/containers -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/lister -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/query -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/scanner -I /home/gilles/Documents/GIT/7.x/core/libs/database/models -I /home/gilles/Documents/GIT/7.x/core/libs/database/server -I /home/gilles/Documents/GIT/7.x/core/libs/database/similaritydb -I /home/gilles/Documents/GIT/7.x/core/libs/database/tags -I /home/gilles/Documents/GIT/7.x/core/libs/database/thumbsdb -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/ifaces -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/scan -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/dialogs -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/color -I /home/gilles/Documents/GIT/7.x/core/libs/dimg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/auto -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/bcg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/bw -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/cb -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/curves -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/decorate -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/film -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/fx -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/greycstoration -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/hsl -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/icc -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/imgqsort -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/lc -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/lens -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/levels -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/nr -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/raw -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/redeye -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/sharp -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/transform -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/wb -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/history -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/loaders -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/md5 -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/core -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/iface -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/setup -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/msgraphdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/msgraphexternalinterceptordemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/vimeodemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/youtubedemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/dragdrop -I /home/gilles/Documents/GIT/7.x/core/libs/dtrash -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/alignment/congealing -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/common -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/facedb -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition -I /home/gilles/Documents/GIT/7.x/core/libs/fileactionmanager -I /home/gilles/Documents/GIT/7.x/core/libs/filters -I /home/gilles/Documents/GIT/7.x/core/libs/iojobs -I /home/gilles/Documents/GIT/7.x/core/libs/jpegutils -I /home/gilles/Documents/GIT/7.x/core/libs/kmemoryinfo -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/containers -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/dmetadata -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/engine -I /home/gilles/Documents/GIT/7.x/core/libs/models -I /home/gilles/Documents/GIT/7.x/core/libs/notificationmanager -I /home/gilles/Documents/GIT/7.x/core/libs/pgfutils/libpgf -I /home/gilles/Documents/GIT/7.x/core/libs/pgfutils -I /home/gilles/Documents/GIT/7.x/core/libs/progressmanager -I /home/gilles/Documents/GIT/7.x/core/libs/properties/captions -I /home/gilles/Documents/GIT/7.x/core/libs/properties/geolocation -I /home/gilles/Documents/GIT/7.x/core/libs/properties/history -I /home/gilles/Documents/GIT/7.x/core/libs/properties/import -I /home/gilles/Documents/GIT/7.x/core/libs/properties -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine/libraw/internal -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine/libraw/libraw -I /home/gilles/Documents/GIT/7.x/core/libs/settings -I /home/gilles/Documents/GIT/7.x/core/libs/tags/engine -I /home/gilles/Documents/GIT/7.x/core/libs/tags/manager/models -I /home/gilles/Documents/GIT/7.x/core/libs/tags/manager -I /home/gilles/Documents/GIT/7.x/core/libs/tags/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/template -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/engine -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/fileio -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/preview -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/thumb -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/video -I /home/gilles/Documents/GIT/7.x/core/libs/threads -I /home/gilles/Documents/GIT/7.x/core/libs/timeadjust -I /home/gilles/Documents/GIT/7.x/core/libs/transitionmngr -I /home/gilles/Documents/GIT/7.x/core/libs/versionmanager -I /home/gilles/Documents/GIT/7.x/core/libs/video/manager -I /home/gilles/Documents/GIT/7.x/core/libs/video/player -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/colors -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/combo -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/files -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/fonts -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/graphicsview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/history -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/iccprofiles -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/itemview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/layout -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/mainview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/metadata -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/range -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/text -I /home/gilles/Documents/GIT/7.x/core/showfoto/main -I /home/gilles/Documents/GIT/7.x/core/showfoto/setup -I /home/gilles/Documents/GIT/7.x/core/showfoto/thumbbar -I /home/gilles/Documents/GIT/7.x/core/tests/advancedrename -I /home/gilles/Documents/GIT/7.x/core/tests/albummodel -I /home/gilles/Documents/GIT/7.x/core/tests/database -I /home/gilles/Documents/GIT/7.x/core/tests/dimg -I /home/gilles/Documents/GIT/7.x/core/tests/facesengine/demo -I /home/gilles/Documents/GIT/7.x/core/tests/facesengine -I /home/gilles/Documents/GIT/7.x/core/tests/fileio -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/editor -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface/demo -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/kmlexport -I /home/gilles/Documents/GIT/7.x/core/tests/imgqsort -I /home/gilles/Documents/GIT/7.x/core/tests/iojobs -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/examples/editsample -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/fakeserver -I /home/gilles/Documents/GIT/7.x/core/tests/metadataengine -I /home/gilles/Documents/GIT/7.x/core/tests/modeltest -I /home/gilles/Documents/GIT/7.x/core/tests/multithreading -I /home/gilles/Documents/GIT/7.x/core/tests/timestampupdate -I /home/gilles/Documents/GIT/7.x/core/tests/vkontakte -I /home/gilles/Documents/GIT/7.x/core/tests/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/common -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /home/gilles/Documents/GIT/7.x/core/utilities/extrasupport/addressbook -I /home/gilles/Documents/GIT/7.x/core/utilities/extrasupport/filesindexer -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/bench -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/database -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/items -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/threads -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/workers -I /home/gilles/Documents/GIT/7.x/core/utilities/firstrun -I /home/gilles/Documents/GIT/7.x/core/utilities/fuzzysearch -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/core -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/items -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/mapsearches -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/core -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/dialogs -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/editor -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/main -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/import/backend -I /home/gilles/Documents/GIT/7.x/core/utilities/import/dialogs -I /home/gilles/Documents/GIT/7.x/core/utilities/import/items -I /home/gilles/Documents/GIT/7.x/core/utilities/import/main -I /home/gilles/Documents/GIT/7.x/core/utilities/import/models -I /home/gilles/Documents/GIT/7.x/core/utilities/import/views -I /home/gilles/Documents/GIT/7.x/core/utilities/import/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/lighttable -I /home/gilles/Documents/GIT/7.x/core/utilities/maintenance -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/dplugins -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/main -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/manager -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/views -I /home/gilles/Documents/GIT/7.x/core/utilities/searchwindow -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/album -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/camera -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/collections -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/editor -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/metadata -I /home/gilles/Documents/GIT/7.x/core/utilities/setup -I /home/gilles/Documents/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /home/gilles/Documents/GIT/7.x/build.scan/core/app/utils -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/ImageMagick-7 -I /usr/lib64/qt5/include -I /usr/lib64/qt5/include/QtXml -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtSql -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/include/KF5/Solid -I /usr/include/KF5 -I /usr/include/KF5/KI18n -I /usr/include/KF5/KConfigCore -I /usr/include/KF5/KCoreAddons -I /usr/include/KF5/KWidgetsAddons -I /usr/include/KF5/KXmlGui -I /usr/include/KF5/KConfigWidgets -I /usr/include/KF5/KCodecs -I /usr/include/KF5/KConfigGui -I /usr/include/KF5/KAuth -I /usr/lib64/qt5/include/QtDBus -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /home/gilles/Documents/GIT/7.x/build.scan/core/libs/database -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /home/gilles/Documents/GIT/7.x/project/reports/report.scan/2020-05-28-132109-7449-1 -x c++ /home/gilles/Documents/GIT/7.x/core/libs/database/item/containers/itemtagpair.cpp -faddrsig
-

/mnt/devel/GIT/7.x/core/libs/database/item/containers/itemtagpair.cpp

+

/home/gilles/Documents/GIT/7.x/core/libs/database/item/containers/itemtagpair.cpp

- +
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2009-07-05
7 * Description : Access to the properties of an Item / Tag pair, i.e., a tag associated to an item
8 *
9 * Copyright (C) 2010 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
10 *
11 * This program is free software; you can redistribute it
12 * and/or modify it under the terms of the GNU General
13 * Public License as published by the Free Software Foundation;
14 * either version 2, or (at your option)
15 * any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
21 *
22 * ============================================================ */
23
24#include "itemtagpair.h"
25
26// Qt includes
27
28#include <QSharedData>
29
30// Local includes
31
32#include "digikam_debug.h"
33#include "coredb.h"
34#include "coredbaccess.h"
35#include "iteminfo.h"
36#include "tagscache.h"
37
38namespace Digikam
39{
40
41typedef QSharedDataPointer<ItemTagPairPriv> ItemTagPairPrivSharedPointer;
42
43// NOTE: do not use Q_DECL_HIDDEN hidden here to prevent export symbols warnings under Windows.
44class ItemTagPairPriv : public QSharedData
45{
46
47public:
48
49 static ItemTagPairPrivSharedPointer createGuarded(qlonglong imageId, int tagId);
50
51 ItemTagPairPriv()
52 : tagId(-1),
53 isAssigned(false),
54 propertiesLoaded(false)
55 {
56 }
57
58 bool isNull() const;
59 void init(const ItemInfo& info, int tagId);
60 void checkProperties();
61
62public:
63
64 ItemInfo info;
65 int tagId;
66 bool isAssigned;
67 bool propertiesLoaded;
68 QMultiMap<QString, QString> properties;
69};
70
71// -----------------------------------------------------------------------
72
73class Q_DECL_HIDDEN__attribute__((visibility("hidden"))) ItemTagPairPrivSharedNull : public ItemTagPairPrivSharedPointer
74{
75public:
76
77 ItemTagPairPrivSharedNull()
78 : QSharedDataPointer<ItemTagPairPriv>(new ItemTagPairPriv)
11
Memory is allocated
79 {
80 }
81};
82
83Q_GLOBAL_STATIC(ItemTagPairPrivSharedNull, imageTagPairPrivSharedNull)namespace { namespace Q_QGS_imageTagPairPrivSharedNull { typedef
ItemTagPairPrivSharedNull Type; QBasicAtomicInt guard = { QtGlobalStatic
::Uninitialized }; __attribute__((visibility("hidden"))) inline
Type *innerFunction() { struct HolderBase { ~HolderBase() noexcept
{ if (guard.load() == QtGlobalStatic::Initialized) guard.store
(QtGlobalStatic::Destroyed); } }; static struct Holder : public
HolderBase { Type value; Holder() noexcept(noexcept(Type ())
) : value () { guard.store(QtGlobalStatic::Initialized); } } holder
; return &holder.value; } } } static QGlobalStatic<ItemTagPairPrivSharedNull
, Q_QGS_imageTagPairPrivSharedNull::innerFunction, Q_QGS_imageTagPairPrivSharedNull
::guard> imageTagPairPrivSharedNull;
9
Calling default constructor for 'Holder'
10
Calling default constructor for 'ItemTagPairPrivSharedNull'
12
Returning from default constructor for 'ItemTagPairPrivSharedNull'
13
Returning from default constructor for 'Holder'
84
85// -----------------------------------------------------------------------
86
87ItemTagPairPrivSharedPointer ItemTagPairPriv::createGuarded(qlonglong imageId, int tagId)
88{
89 if ((imageId <= 0) || (tagId <= 0))
2
Assuming 'imageId' is > 0
3
Assuming 'tagId' is <= 0
4
Taking true branch
90 {
91 qCDebug(DIGIKAM_DATABASE_LOG)for (bool qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled
(); qt_category_enabled; qt_category_enabled = false) QMessageLogger
("/mnt/devel/GIT/7.x/core/libs/database/item/containers/itemtagpair.cpp"
, 91, __PRETTY_FUNCTION__, DIGIKAM_DATABASE_LOG().categoryName
()).debug()
<< "Attempt to create invalid tag pair image id" << imageId << "tag id" << tagId;
91 qCDebug(DIGIKAM_DATABASE_LOG)for (bool qt_category_enabled = DIGIKAM_DATABASE_LOG().isDebugEnabled
(); qt_category_enabled; qt_category_enabled = false) QMessageLogger
("/home/gilles/Documents/GIT/7.x/core/libs/database/item/containers/itemtagpair.cpp"
, 91, __PRETTY_FUNCTION__, DIGIKAM_DATABASE_LOG().categoryName
()).debug()
<< "Attempt to create invalid tag pair image id" << imageId << "tag id" << tagId;
5
Loop condition is false. Execution continues on line 92
92 return *imageTagPairPrivSharedNull;
6
Calling 'QGlobalStatic::operator*'
15
Returned allocated memory
93 }
94
95 return ItemTagPairPrivSharedPointer(new ItemTagPairPriv);
96}
97
98void ItemTagPairPriv::init(const ItemInfo& i, int t)
99{
100 if (isNull())
27
Calling 'ItemTagPairPriv::isNull'
101 {
102 return;
103 }
104
105 tagId = t;
106 info = i;
107 isAssigned = info.tagIds().contains(tagId);
108}
109
110void ItemTagPairPriv::checkProperties()
111{
112 if (!isNull() && !propertiesLoaded)
113 {
114 QList<ImageTagProperty> props = CoreDbAccess().db()->getImageTagProperties(info.id(), tagId);
115
116 foreach (const ImageTagProperty& p, props)for (auto _container_ = QtPrivate::qMakeForeachContainer(props
); _container_.control && _container_.i != _container_
.e; ++_container_.i, _container_.control ^= 1) for (const ImageTagProperty
& p = *_container_.i; _container_.control; _container_.control
= 0)
117 {
118 properties.insert(p.property, p.value);
119 }
120
121 propertiesLoaded = true;
122 }
123}
124
125bool ItemTagPairPriv::isNull() const
126{
127 return (this == imageTagPairPrivSharedNull->constData());
28
Calling 'QSharedDataPointer::constData'
128}
129
130// -----------------------------------------------------------------------
131
132ItemTagPair::ItemTagPair()
133 : d(*imageTagPairPrivSharedNull)
134{
135}
136
137ItemTagPair::ItemTagPair(qlonglong imageId, int tagId)
138 : d(ItemTagPairPriv::createGuarded(imageId, tagId))
1
Calling 'ItemTagPairPriv::createGuarded'
16
Returned allocated memory
17
Calling 'QSharedDataPointer::operator Digikam::ItemTagPairPriv *'
25
Returning; memory was released
139{
140 d->init(ItemInfo(imageId), tagId);
26
Calling 'ItemTagPairPriv::init'
141}
142
143ItemTagPair::ItemTagPair(const ItemInfo& info, int tagId)
144 : d(ItemTagPairPriv::createGuarded(info.id(), tagId))
145{
146 d->init(info, tagId);
147}
148
149ItemTagPair::ItemTagPair(const ItemTagPair& other)
150 : d(other.d)
151{
152}
153
154ItemTagPair::~ItemTagPair()
155{
156}
157
158ItemTagPair& ItemTagPair::operator=(const ItemTagPair& other)
159{
160 d = other.d;
161
162 return *this;
163}
164
165bool ItemTagPair::isNull() const
166{
167 return (d == *imageTagPairPrivSharedNull);
168}
169
170QList<ItemTagPair> ItemTagPair::availablePairs(qlonglong imageId)
171{
172 return availablePairs(ItemInfo(imageId));
173}
174
175QList<ItemTagPair> ItemTagPair::availablePairs(const ItemInfo& info)
176{
177 QList<ItemTagPair> pairs;
178
179 if (info.isNull())
180 {
181 return pairs;
182 }
183
184 QList<int> tagIds = CoreDbAccess().db()->getTagIdsWithProperties(info.id());
185
186 foreach (int tagId, tagIds)for (auto _container_ = QtPrivate::qMakeForeachContainer(tagIds
); _container_.control && _container_.i != _container_
.e; ++_container_.i, _container_.control ^= 1) for (int tagId
= *_container_.i; _container_.control; _container_.control =
0)
187 {
188 pairs << ItemTagPair(info, tagId);
189 }
190
191 return pairs;
192}
193
194qlonglong ItemTagPair::imageId() const
195{
196 return d->info.id();
197}
198
199int ItemTagPair::tagId() const
200{
201 return d->tagId;
202}
203
204bool ItemTagPair::isAssigned() const
205{
206 return d->isAssigned;
207}
208
209void ItemTagPair::assignTag()
210{
211 if (!d->isNull() && !d->isAssigned)
212 {
213 d->info.setTag(d->tagId);
214 d->isAssigned = true;
215 }
216}
217
218void ItemTagPair::unAssignTag()
219{
220 if (!d->isNull() && d->isAssigned)
221 {
222 d->info.removeTag(d->tagId);
223 d->isAssigned = false;
224 }
225}
226
227bool ItemTagPair::hasProperty(const QString& key) const
228{
229 d->checkProperties();
230
231 return d->properties.contains(key);
232}
233
234bool ItemTagPair::hasAnyProperty(const QStringList& keys) const
235{
236 d->checkProperties();
237
238 foreach (const QString& key, keys)for (auto _container_ = QtPrivate::qMakeForeachContainer(keys
); _container_.control && _container_.i != _container_
.e; ++_container_.i, _container_.control ^= 1) for (const QString
& key = *_container_.i; _container_.control; _container_.
control = 0)
239 {
240 if (d->properties.contains(key))
241 {
242 return true;
243 }
244 }
245
246 return false;
247}
248
249bool ItemTagPair::hasValue(const QString& key, const QString& value) const
250{
251 d->checkProperties();
252
253 return d->properties.contains(key, value);
254}
255
256QString ItemTagPair::value(const QString& key) const
257{
258 d->checkProperties();
259
260 return d->properties.value(key);
261}
262
263QStringList ItemTagPair::allValues(const QStringList& keys) const
264{
265 d->checkProperties();
266 QStringList values;
267
268 foreach (const QString& key, keys)for (auto _container_ = QtPrivate::qMakeForeachContainer(keys
); _container_.control && _container_.i != _container_
.e; ++_container_.i, _container_.control ^= 1) for (const QString
& key = *_container_.i; _container_.control; _container_.
control = 0)
269 {
270 values << d->properties.values(key);
271 }
272
273 return values;
274}
275
276QStringList ItemTagPair::values(const QString& key) const
277{
278 d->checkProperties();
279
280 return d->properties.values(key);
281}
282
283QStringList ItemTagPair::propertyKeys() const
284{
285 d->checkProperties();
286
287 return d->properties.keys();
288}
289
290QMap<QString, QString> ItemTagPair::properties() const
291{
292 d->checkProperties();
293
294 return d->properties;
295}
296
297void ItemTagPair::setProperty(const QString& key, const QString& value)
298{
299 if (d->isNull() || d->info.isNull())
300 {
301 return;
302 }
303
304 d->checkProperties();
305
306 // for single entries in db, this can of course be optimized using a single UPDATE WHERE
307 removeProperties(key);
308 d->properties.replace(key, value);
309 CoreDbAccess().db()->addImageTagProperty(d->info.id(), d->tagId, key, value);
310}
311
312void ItemTagPair::addProperty(const QString& key, const QString& value)
313{
314 if (d->isNull() || d->info.isNull())
315 {
316 return;
317 }
318
319 d->checkProperties();
320
321 if (!d->properties.contains(key, value))
322 {
323 d->properties.insert(key, value);
324 CoreDbAccess().db()->addImageTagProperty(d->info.id(), d->tagId, key, value);
325 }
326}
327
328void ItemTagPair::removeProperty(const QString& key, const QString& value)
329{
330 if (d->isNull() || d->info.isNull())
331 {
332 return;
333 }
334
335 d->checkProperties();
336
337 if (d->properties.contains(key, value))
338 {
339 CoreDbAccess().db()->removeImageTagProperties(d->info.id(), d->tagId, key, value);
340 d->properties.remove(key, value);
341 }
342}
343
344void ItemTagPair::removeProperties(const QString& key)
345{
346 if (d->isNull() || d->info.isNull())
347 {
348 return;
349 }
350
351 d->checkProperties();
352
353 if (d->properties.contains(key))
354 {
355 CoreDbAccess().db()->removeImageTagProperties(d->info.id(), d->tagId, key);
356 d->properties.remove(key);
357 }
358}
359
360void ItemTagPair::clearProperties()
361{
362 if (d->isNull() || d->info.isNull())
363 {
364 return;
365 }
366
367 if (d->propertiesLoaded && d->properties.isEmpty())
368 {
369 return;
370 }
371
372 CoreDbAccess().db()->removeImageTagProperties(d->info.id(), d->tagId);
373 d->properties.clear();
374 d->propertiesLoaded = true;
375}
376
377} // namespace Digikam

/usr/lib64/qt5/include/QtCore/qglobalstatic.h

1/****************************************************************************
2**
3** Copyright (C) 2016 Intel Corporation.
4** Contact: https://www.qt.io/licensing/
5**
6** This file is part of the QtCore module of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:LGPL$
9** Commercial License Usage
10** Licensees holding valid commercial Qt licenses may use this file in
11** accordance with the commercial license agreement provided with the
12** Software or, alternatively, in accordance with the terms contained in
13** a written agreement between you and The Qt Company. For licensing terms
14** and conditions see https://www.qt.io/terms-conditions. For further
15** information use the contact form at https://www.qt.io/contact-us.
16**
17** GNU Lesser General Public License Usage
18** Alternatively, this file may be used under the terms of the GNU Lesser
19** General Public License version 3 as published by the Free Software
20** Foundation and appearing in the file LICENSE.LGPL3 included in the
21** packaging of this file. Please review the following information to
22** ensure the GNU Lesser General Public License version 3 requirements
23** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24**
25** GNU General Public License Usage
26** Alternatively, this file may be used under the terms of the GNU
27** General Public License version 2.0 or (at your option) the GNU General
28** Public license version 3 or any later version approved by the KDE Free
29** Qt Foundation. The licenses are as published by the Free Software
30** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31** included in the packaging of this file. Please review the following
32** information to ensure the GNU General Public License requirements will
33** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34** https://www.gnu.org/licenses/gpl-3.0.html.
35**
36** $QT_END_LICENSE$
37**
38****************************************************************************/
39
40#include <QtCore/qglobal.h>
41
42#ifndef QGLOBALSTATIC_H
43#define QGLOBALSTATIC_H
44
45#include <QtCore/qatomic.h>
46
47QT_BEGIN_NAMESPACE
48
49namespace QtGlobalStatic {
50enum GuardValues {
51 Destroyed = -2,
52 Initialized = -1,
53 Uninitialized = 0,
54 Initializing = 1
55};
56}
57
58#if !QT_CONFIG(thread)(1/1 == 1) || defined(Q_COMPILER_THREADSAFE_STATICS)
59// some compilers support thread-safe statics
60// The IA-64 C++ ABI requires this, so we know that all GCC versions since 3.4
61// support it. C++11 also requires this behavior.
62// Clang and Intel CC masquerade as GCC when compiling on Linux.
63//
64// Apple's libc++abi however uses a global lock for initializing local statics,
65// which will block other threads also trying to initialize a local static
66// until the constructor returns ...
67// We better avoid these kind of problems by using our own locked implementation.
68
69#if defined(Q_OS_UNIX) && defined(Q_CC_INTEL)
70// Work around Intel issue ID 6000058488:
71// local statics inside an inline function inside an anonymous namespace are global
72// symbols (this affects the IA-64 C++ ABI, so OS X and Linux only)
73# define Q_GLOBAL_STATIC_INTERNAL_DECORATION__attribute__((visibility("hidden"))) inline Q_DECL_HIDDEN__attribute__((visibility("hidden")))
74#else
75# define Q_GLOBAL_STATIC_INTERNAL_DECORATION__attribute__((visibility("hidden"))) inline Q_DECL_HIDDEN__attribute__((visibility("hidden"))) inline
76#endif
77
78#define Q_GLOBAL_STATIC_INTERNAL(ARGS)__attribute__((visibility("hidden"))) inline Type *innerFunction
() { struct HolderBase { ~HolderBase() noexcept { if (guard.load
() == QtGlobalStatic::Initialized) guard.store(QtGlobalStatic
::Destroyed); } }; static struct Holder : public HolderBase {
Type value; Holder() noexcept(noexcept(Type ARGS)) : value ARGS
{ guard.store(QtGlobalStatic::Initialized); } } holder; return
&holder.value; }
\
79 Q_GLOBAL_STATIC_INTERNAL_DECORATION__attribute__((visibility("hidden"))) inline Type *innerFunction() \
80 { \
81 struct HolderBase { \
82 ~HolderBase() Q_DECL_NOTHROWnoexcept \
83 { if (guard.load() == QtGlobalStatic::Initialized) \
84 guard.store(QtGlobalStatic::Destroyed); } \
85 }; \
86 static struct Holder : public HolderBase { \
87 Type value; \
88 Holder() \
89 Q_DECL_NOEXCEPT_EXPR(noexcept(Type ARGS))noexcept(noexcept(Type ARGS)) \
90 : value ARGS \
91 { guard.store(QtGlobalStatic::Initialized); } \
92 } holder; \
93 return &holder.value; \
94 }
95#else
96// We don't know if this compiler supports thread-safe global statics
97// so use our own locked implementation
98
99QT_END_NAMESPACE
100#include <QtCore/qmutex.h>
101QT_BEGIN_NAMESPACE
102
103#define Q_GLOBAL_STATIC_INTERNAL(ARGS)__attribute__((visibility("hidden"))) inline Type *innerFunction
() { struct HolderBase { ~HolderBase() noexcept { if (guard.load
() == QtGlobalStatic::Initialized) guard.store(QtGlobalStatic
::Destroyed); } }; static struct Holder : public HolderBase {
Type value; Holder() noexcept(noexcept(Type ARGS)) : value ARGS
{ guard.store(QtGlobalStatic::Initialized); } } holder; return
&holder.value; }
\
104 Q_DECL_HIDDEN__attribute__((visibility("hidden"))) inline Type *innerFunction() \
105 { \
106 static Type *d; \
107 static QBasicMutex mutex; \
108 int x = guard.loadAcquire(); \
109 if (Q_UNLIKELY(x >= QtGlobalStatic::Uninitialized)__builtin_expect(!!(x >= QtGlobalStatic::Uninitialized), false
)
) { \
110 QMutexLocker locker(&mutex); \
111 if (guard.load() == QtGlobalStatic::Uninitialized) { \
112 d = new Type ARGS; \
113 static struct Cleanup { \
114 ~Cleanup() { \
115 delete d; \
116 guard.store(QtGlobalStatic::Destroyed); \
117 } \
118 } cleanup; \
119 guard.storeRelease(QtGlobalStatic::Initialized); \
120 } \
121 } \
122 return d; \
123 }
124#endif
125
126// this class must be POD, unless the compiler supports thread-safe statics
127template <typename T, T *(&innerFunction)(), QBasicAtomicInt &guard>
128struct QGlobalStatic
129{
130 typedef T Type;
131
132 bool isDestroyed() const { return guard.load() <= QtGlobalStatic::Destroyed; }
133 bool exists() const { return guard.load() == QtGlobalStatic::Initialized; }
134 operator Type *() { if (isDestroyed()) return 0; return innerFunction(); }
135 Type *operator()() { if (isDestroyed()) return 0; return innerFunction(); }
136 Type *operator->()
137 {
138 Q_ASSERT_X(!isDestroyed(), "Q_GLOBAL_STATIC", "The global static was used after being destroyed")((!isDestroyed()) ? static_cast<void>(0) : qt_assert_x(
"Q_GLOBAL_STATIC", "The global static was used after being destroyed"
, "/usr/lib64/qt5/include/QtCore/qglobalstatic.h", 138))
;
139 return innerFunction();
140 }
141 Type &operator*()
142 {
143 Q_ASSERT_X(!isDestroyed(), "Q_GLOBAL_STATIC", "The global static was used after being destroyed")((!isDestroyed()) ? static_cast<void>(0) : qt_assert_x(
"Q_GLOBAL_STATIC", "The global static was used after being destroyed"
, "/usr/lib64/qt5/include/QtCore/qglobalstatic.h", 143))
;
7
'?' condition is true
144 return *innerFunction();
8
Calling 'innerFunction'
14
Returned allocated memory
145 }
146};
147
148#define Q_GLOBAL_STATIC_WITH_ARGS(TYPE, NAME, ARGS)namespace { namespace Q_QGS_NAME { typedef TYPE Type; QBasicAtomicInt
guard = { QtGlobalStatic::Uninitialized }; __attribute__((visibility
("hidden"))) inline Type *innerFunction() { struct HolderBase
{ ~HolderBase() noexcept { if (guard.load() == QtGlobalStatic
::Initialized) guard.store(QtGlobalStatic::Destroyed); } }; static
struct Holder : public HolderBase { Type value; Holder() noexcept
(noexcept(Type ARGS)) : value ARGS { guard.store(QtGlobalStatic
::Initialized); } } holder; return &holder.value; } } } static
QGlobalStatic<TYPE, Q_QGS_NAME::innerFunction, Q_QGS_NAME
::guard> NAME;
\
149 namespace { namespace Q_QGS_ ## NAME { \
150 typedef TYPE Type; \
151 QBasicAtomicInt guard = Q_BASIC_ATOMIC_INITIALIZER(QtGlobalStatic::Uninitialized){ QtGlobalStatic::Uninitialized }; \
152 Q_GLOBAL_STATIC_INTERNAL(ARGS)__attribute__((visibility("hidden"))) inline Type *innerFunction
() { struct HolderBase { ~HolderBase() noexcept { if (guard.load
() == QtGlobalStatic::Initialized) guard.store(QtGlobalStatic
::Destroyed); } }; static struct Holder : public HolderBase {
Type value; Holder() noexcept(noexcept(Type ARGS)) : value ARGS
{ guard.store(QtGlobalStatic::Initialized); } } holder; return
&holder.value; }
\
153 } } \
154 static QGlobalStatic<TYPE, \
155 Q_QGS_ ## NAME::innerFunction, \
156 Q_QGS_ ## NAME::guard> NAME;
157
158#define Q_GLOBAL_STATIC(TYPE, NAME)namespace { namespace Q_QGS_NAME { typedef TYPE Type; QBasicAtomicInt
guard = { QtGlobalStatic::Uninitialized }; __attribute__((visibility
("hidden"))) inline Type *innerFunction() { struct HolderBase
{ ~HolderBase() noexcept { if (guard.load() == QtGlobalStatic
::Initialized) guard.store(QtGlobalStatic::Destroyed); } }; static
struct Holder : public HolderBase { Type value; Holder() noexcept
(noexcept(Type ())) : value () { guard.store(QtGlobalStatic::
Initialized); } } holder; return &holder.value; } } } static
QGlobalStatic<TYPE, Q_QGS_NAME::innerFunction, Q_QGS_NAME
::guard> NAME;
\
159 Q_GLOBAL_STATIC_WITH_ARGS(TYPE, NAME, ())namespace { namespace Q_QGS_NAME { typedef TYPE Type; QBasicAtomicInt
guard = { QtGlobalStatic::Uninitialized }; __attribute__((visibility
("hidden"))) inline Type *innerFunction() { struct HolderBase
{ ~HolderBase() noexcept { if (guard.load() == QtGlobalStatic
::Initialized) guard.store(QtGlobalStatic::Destroyed); } }; static
struct Holder : public HolderBase { Type value; Holder() noexcept
(noexcept(Type ())) : value () { guard.store(QtGlobalStatic::
Initialized); } } holder; return &holder.value; } } } static
QGlobalStatic<TYPE, Q_QGS_NAME::innerFunction, Q_QGS_NAME
::guard> NAME;
160
161QT_END_NAMESPACE
162#endif // QGLOBALSTATIC_H

/usr/lib64/qt5/include/QtCore/qshareddata.h

1/****************************************************************************
2**
3** Copyright (C) 2016 The Qt Company Ltd.
4** Contact: https://www.qt.io/licensing/
5**
6** This file is part of the QtCore module of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:LGPL$
9** Commercial License Usage
10** Licensees holding valid commercial Qt licenses may use this file in
11** accordance with the commercial license agreement provided with the
12** Software or, alternatively, in accordance with the terms contained in
13** a written agreement between you and The Qt Company. For licensing terms
14** and conditions see https://www.qt.io/terms-conditions. For further
15** information use the contact form at https://www.qt.io/contact-us.
16**
17** GNU Lesser General Public License Usage
18** Alternatively, this file may be used under the terms of the GNU Lesser
19** General Public License version 3 as published by the Free Software
20** Foundation and appearing in the file LICENSE.LGPL3 included in the
21** packaging of this file. Please review the following information to
22** ensure the GNU Lesser General Public License version 3 requirements
23** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24**
25** GNU General Public License Usage
26** Alternatively, this file may be used under the terms of the GNU
27** General Public License version 2.0 or (at your option) the GNU General
28** Public license version 3 or any later version approved by the KDE Free
29** Qt Foundation. The licenses are as published by the Free Software
30** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31** included in the packaging of this file. Please review the following
32** information to ensure the GNU General Public License requirements will
33** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34** https://www.gnu.org/licenses/gpl-3.0.html.
35**
36** $QT_END_LICENSE$
37**
38****************************************************************************/
39
40#ifndef QSHAREDDATA_H
41#define QSHAREDDATA_H
42
43#include <QtCore/qglobal.h>
44#include <QtCore/qatomic.h>
45#if QT_DEPRECATED_SINCE(5, 6)(((5<<16)|(6<<8)|(0)) > ((5<<16)|(0<<
8)|(0)))
46#include <QtCore/qhash.h>
47#endif
48#include <QtCore/qhashfunctions.h>
49
50QT_BEGIN_NAMESPACE
51
52
53template <class T> class QSharedDataPointer;
54
55class Q_CORE_EXPORT__attribute__((visibility("default"))) QSharedData
56{
57public:
58 mutable QAtomicInt ref;
59
60 inline QSharedData() : ref(0) { }
61 inline QSharedData(const QSharedData &) : ref(0) { }
62
63private:
64 // using the assignment operator would lead to corruption in the ref-counting
65 QSharedData &operator=(const QSharedData &);
66};
67
68template <class T> class QSharedDataPointer
69{
70public:
71 typedef T Type;
72 typedef T *pointer;
73
74 inline void detach() { if (d && d->ref.load() != 1) detach_helper(); }
19
Taking true branch
20
Calling 'QSharedDataPointer::detach_helper'
23
Returning; memory was released
75 inline T &operator*() { detach(); return *d; }
76 inline const T &operator*() const { return *d; }
77 inline T *operator->() { detach(); return d; }
78 inline const T *operator->() const { return d; }
79 inline operator T *() { detach(); return d; }
18
Calling 'QSharedDataPointer::detach'
24
Returning; memory was released
80 inline operator const T *() const { return d; }
81 inline T *data() { detach(); return d; }
82 inline const T *data() const { return d; }
83 inline const T *constData() const { return d; }
29
Use of memory after it is freed
84
85 inline bool operator==(const QSharedDataPointer<T> &other) const { return d == other.d; }
86 inline bool operator!=(const QSharedDataPointer<T> &other) const { return d != other.d; }
87
88 inline QSharedDataPointer() { d = nullptr; }
89 inline ~QSharedDataPointer() { if (d && !d->ref.deref()) delete d; }
90
91 explicit QSharedDataPointer(T *data) Q_DECL_NOTHROWnoexcept;
92 inline QSharedDataPointer(const QSharedDataPointer<T> &o) : d(o.d) { if (d) d->ref.ref(); }
93 inline QSharedDataPointer<T> & operator=(const QSharedDataPointer<T> &o) {
94 if (o.d != d) {
95 if (o.d)
96 o.d->ref.ref();
97 T *old = d;
98 d = o.d;
99 if (old && !old->ref.deref())
100 delete old;
101 }
102 return *this;
103 }
104 inline QSharedDataPointer &operator=(T *o) {
105 if (o != d) {
106 if (o)
107 o->ref.ref();
108 T *old = d;
109 d = o;
110 if (old && !old->ref.deref())
111 delete old;
112 }
113 return *this;
114 }
115#ifdef Q_COMPILER_RVALUE_REFS
116 QSharedDataPointer(QSharedDataPointer &&o) Q_DECL_NOTHROWnoexcept : d(o.d) { o.d = nullptr; }
117 inline QSharedDataPointer<T> &operator=(QSharedDataPointer<T> &&other) Q_DECL_NOTHROWnoexcept
118 {
119 QSharedDataPointer moved(std::move(other));
120 swap(moved);
121 return *this;
122 }
123#endif
124
125 inline bool operator!() const { return !d; }
126
127 inline void swap(QSharedDataPointer &other) Q_DECL_NOTHROWnoexcept
128 { qSwap(d, other.d); }
129
130protected:
131 T *clone();
132
133private:
134 void detach_helper();
135
136 T *d;
137};
138
139template <class T> inline bool operator==(std::nullptr_t p1, const QSharedDataPointer<T> &p2)
140{
141 Q_UNUSED(p1)(void)p1;;
142 return !p2;
143}
144
145template <class T> inline bool operator==(const QSharedDataPointer<T> &p1, std::nullptr_t p2)
146{
147 Q_UNUSED(p2)(void)p2;;
148 return !p1;
149}
150
151template <class T> class QExplicitlySharedDataPointer
152{
153public:
154 typedef T Type;
155 typedef T *pointer;
156
157 inline T &operator*() const { return *d; }
158 inline T *operator->() { return d; }
159 inline T *operator->() const { return d; }
160 inline T *data() const { return d; }
161 inline const T *constData() const { return d; }
162 inline T *take() { T *x = d; d = nullptr; return x; }
163
164 inline void detach() { if (d && d->ref.load() != 1) detach_helper(); }
165
166 inline void reset()
167 {
168 if(d && !d->ref.deref())
169 delete d;
170
171 d = nullptr;
172 }
173
174 inline operator bool () const { return d != nullptr; }
175
176 inline bool operator==(const QExplicitlySharedDataPointer<T> &other) const { return d == other.d; }
177 inline bool operator!=(const QExplicitlySharedDataPointer<T> &other) const { return d != other.d; }
178 inline bool operator==(const T *ptr) const { return d == ptr; }
179 inline bool operator!=(const T *ptr) const { return d != ptr; }
180
181 inline QExplicitlySharedDataPointer() { d = nullptr; }
182 inline ~QExplicitlySharedDataPointer() { if (d && !d->ref.deref()) delete d; }
183
184 explicit QExplicitlySharedDataPointer(T *data) Q_DECL_NOTHROWnoexcept;
185 inline QExplicitlySharedDataPointer(const QExplicitlySharedDataPointer<T> &o) : d(o.d) { if (d) d->ref.ref(); }
186
187 template<class X>
188 inline QExplicitlySharedDataPointer(const QExplicitlySharedDataPointer<X> &o)
189#ifdef QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST
190 : d(static_cast<T *>(o.data()))
191#else
192 : d(o.data())
193#endif
194 {
195 if(d)
196 d->ref.ref();
197 }
198
199 inline QExplicitlySharedDataPointer<T> & operator=(const QExplicitlySharedDataPointer<T> &o) {
200 if (o.d != d) {
201 if (o.d)
202 o.d->ref.ref();
203 T *old = d;
204 d = o.d;
205 if (old && !old->ref.deref())
206 delete old;
207 }
208 return *this;
209 }
210 inline QExplicitlySharedDataPointer &operator=(T *o) {
211 if (o != d) {
212 if (o)
213 o->ref.ref();
214 T *old = d;
215 d = o;
216 if (old && !old->ref.deref())
217 delete old;
218 }
219 return *this;
220 }
221#ifdef Q_COMPILER_RVALUE_REFS
222 inline QExplicitlySharedDataPointer(QExplicitlySharedDataPointer &&o) Q_DECL_NOTHROWnoexcept : d(o.d) { o.d = nullptr; }
223 inline QExplicitlySharedDataPointer<T> &operator=(QExplicitlySharedDataPointer<T> &&other) Q_DECL_NOTHROWnoexcept
224 {
225 QExplicitlySharedDataPointer moved(std::move(other));
226 swap(moved);
227 return *this;
228 }
229#endif
230
231 inline bool operator!() const { return !d; }
232
233 inline void swap(QExplicitlySharedDataPointer &other) Q_DECL_NOTHROWnoexcept
234 { qSwap(d, other.d); }
235
236protected:
237 T *clone();
238
239private:
240 void detach_helper();
241
242 T *d;
243};
244
245template <class T>
246Q_INLINE_TEMPLATEinline QSharedDataPointer<T>::QSharedDataPointer(T *adata) Q_DECL_NOTHROWnoexcept
247 : d(adata)
248{ if (d) d->ref.ref(); }
249
250template <class T>
251Q_INLINE_TEMPLATEinline T *QSharedDataPointer<T>::clone()
252{
253 return new T(*d);
254}
255
256template <class T>
257Q_OUTOFLINE_TEMPLATE void QSharedDataPointer<T>::detach_helper()
258{
259 T *x = clone();
260 x->ref.ref();
261 if (!d->ref.deref())
21
Taking true branch
262 delete d;
22
Memory is released
263 d = x;
264}
265
266template <class T>
267Q_INLINE_TEMPLATEinline T *QExplicitlySharedDataPointer<T>::clone()
268{
269 return new T(*d);
270}
271
272template <class T>
273Q_OUTOFLINE_TEMPLATE void QExplicitlySharedDataPointer<T>::detach_helper()
274{
275 T *x = clone();
276 x->ref.ref();
277 if (!d->ref.deref())
278 delete d;
279 d = x;
280}
281
282template <class T>
283Q_INLINE_TEMPLATEinline QExplicitlySharedDataPointer<T>::QExplicitlySharedDataPointer(T *adata) Q_DECL_NOTHROWnoexcept
284 : d(adata)
285{ if (d) d->ref.ref(); }
286
287template <class T> inline bool operator==(std::nullptr_t p1, const QExplicitlySharedDataPointer<T> &p2)
288{
289 Q_UNUSED(p1)(void)p1;;
290 return !p2;
291}
292
293template <class T> inline bool operator==(const QExplicitlySharedDataPointer<T> &p1, std::nullptr_t p2)
294{
295 Q_UNUSED(p2)(void)p2;;
296 return !p1;
297}
298
299template <class T>
300Q_INLINE_TEMPLATEinline void qSwap(QSharedDataPointer<T> &p1, QSharedDataPointer<T> &p2)
301{ p1.swap(p2); }
302
303template <class T>
304Q_INLINE_TEMPLATEinline void qSwap(QExplicitlySharedDataPointer<T> &p1, QExplicitlySharedDataPointer<T> &p2)
305{ p1.swap(p2); }
306
307QT_END_NAMESPACE
308namespace std {
309 template <class T>
310 Q_INLINE_TEMPLATEinline void swap(QT_PREPEND_NAMESPACE(QSharedDataPointer)::QSharedDataPointer<T> &p1, QT_PREPEND_NAMESPACE(QSharedDataPointer)::QSharedDataPointer<T> &p2)
311 { p1.swap(p2); }
312
313 template <class T>
314 Q_INLINE_TEMPLATEinline void swap(QT_PREPEND_NAMESPACE(QExplicitlySharedDataPointer)::QExplicitlySharedDataPointer<T> &p1, QT_PREPEND_NAMESPACE(QExplicitlySharedDataPointer)::QExplicitlySharedDataPointer<T> &p2)
315 { p1.swap(p2); }
316}
317QT_BEGIN_NAMESPACE
318
319template <class T>
320Q_INLINE_TEMPLATEinline uint qHash(const QSharedDataPointer<T> &ptr, uint seed = 0) Q_DECL_NOTHROWnoexcept
321{
322 return qHash(ptr.data(), seed);
323}
324template <class T>
325Q_INLINE_TEMPLATEinline uint qHash(const QExplicitlySharedDataPointer<T> &ptr, uint seed = 0) Q_DECL_NOTHROWnoexcept
326{
327 return qHash(ptr.data(), seed);
328}
329
330template<typename T> Q_DECLARE_TYPEINFO_BODY(QSharedDataPointer<T>, Q_MOVABLE_TYPE)class QTypeInfo<QSharedDataPointer<T> > { public:
enum { isSpecialized = true, isComplex = (((Q_MOVABLE_TYPE) &
Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) &
(Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isRelocatable = !
isStatic || ((Q_MOVABLE_TYPE) & Q_RELOCATABLE_TYPE), isLarge
= (sizeof(QSharedDataPointer<T>)>sizeof(void*)), isPointer
= false, isIntegral = std::is_integral< QSharedDataPointer
<T> >::value, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE
) != 0), sizeOf = sizeof(QSharedDataPointer<T>) }; static
inline const char *name() { return "QSharedDataPointer<T>"
; } }
;
331template<typename T> Q_DECLARE_TYPEINFO_BODY(QExplicitlySharedDataPointer<T>, Q_MOVABLE_TYPE)class QTypeInfo<QExplicitlySharedDataPointer<T> >
{ public: enum { isSpecialized = true, isComplex = (((Q_MOVABLE_TYPE
) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE
) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isRelocatable
= !isStatic || ((Q_MOVABLE_TYPE) & Q_RELOCATABLE_TYPE), isLarge
= (sizeof(QExplicitlySharedDataPointer<T>)>sizeof(void
*)), isPointer = false, isIntegral = std::is_integral< QExplicitlySharedDataPointer
<T> >::value, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE
) != 0), sizeOf = sizeof(QExplicitlySharedDataPointer<T>
) }; static inline const char *name() { return "QExplicitlySharedDataPointer<T>"
; } }
;
332
333QT_END_NAMESPACE
334
335#endif // QSHAREDDATA_H
diff --git a/static/reports/clang/master/report-afa27a.html b/static/reports/clang/master/report-afa27a.html deleted file mode 100644 index ff6238f64..000000000 --- a/static/reports/clang/master/report-afa27a.html +++ /dev/null @@ -1,546 +0,0 @@ - - - -/mnt/devel/GIT/7.x/core/libs/dimg/dimg_data.cpp - - - - - - - - - - - - - - - - - - - - - - - - - - -

Bug Summary

- - - - -
File:mnt/devel/GIT/7.x/core/libs/dimg/dimg_data.cpp
Warning:line 96, column 13
Use of memory after it is freed
- -

Annotated Source Code

-

Press '?' - to see keyboard shortcuts

- - -
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_data.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_USE_QSTRINGBUILDER -D TRANSLATION_DOMAIN="digikam" -D UNIX_ENV=1 -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -D digikamcore_EXPORTS -D qDNGLittleEndian -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/7.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/7.x/core/libs/dimg -I /mnt/devel/GIT/7.x/build.scan/core/libs/dimg/core_dimg_obj_autogen/include -I /mnt/devel/GIT/7.x/core/app/date -I /mnt/devel/GIT/7.x/core/app/dragdrop -I /mnt/devel/GIT/7.x/core/app/filters -I /mnt/devel/GIT/7.x/core/app/items/delegate -I /mnt/devel/GIT/7.x/core/app/items/overlays -I /mnt/devel/GIT/7.x/core/app/items/thumbbar -I /mnt/devel/GIT/7.x/core/app/items/utils -I /mnt/devel/GIT/7.x/core/app/items/views -I /mnt/devel/GIT/7.x/core/app/main -I /mnt/devel/GIT/7.x/core/app/utils -I /mnt/devel/GIT/7.x/core/app/views/preview -I /mnt/devel/GIT/7.x/core/app/views/sidebar -I /mnt/devel/GIT/7.x/core/app/views/stack -I /mnt/devel/GIT/7.x/core/app/views/tableview -I /mnt/devel/GIT/7.x/core/app/views/utils -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/7.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/7.x/core/dplugins/dimg/png -I /mnt/devel/GIT/7.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/7.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/7.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/7.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/7.x/core/libs/album/engine -I /mnt/devel/GIT/7.x/core/libs/album/manager -I /mnt/devel/GIT/7.x/core/libs/album/treeview -I /mnt/devel/GIT/7.x/core/libs/album/widgets -I /mnt/devel/GIT/7.x/core/libs/database/collection -I /mnt/devel/GIT/7.x/core/libs/database/coredb -I /mnt/devel/GIT/7.x/core/libs/database/dbjobs -I /mnt/devel/GIT/7.x/core/libs/database/engine -I /mnt/devel/GIT/7.x/core/libs/database/haar -I /mnt/devel/GIT/7.x/core/libs/database/history -I /mnt/devel/GIT/7.x/core/libs/database/item/containers -I /mnt/devel/GIT/7.x/core/libs/database/item/lister -I /mnt/devel/GIT/7.x/core/libs/database/item/query -I /mnt/devel/GIT/7.x/core/libs/database/item/scanner -I /mnt/devel/GIT/7.x/core/libs/database/models -I /mnt/devel/GIT/7.x/core/libs/database/server -I /mnt/devel/GIT/7.x/core/libs/database/similaritydb -I /mnt/devel/GIT/7.x/core/libs/database/tags -I /mnt/devel/GIT/7.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/7.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/7.x/core/libs/database/utils/scan -I /mnt/devel/GIT/7.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/7.x/core/libs/dialogs -I /mnt/devel/GIT/7.x/core/libs/dimg/color -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/7.x/core/libs/dimg/filters -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/raw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/7.x/core/libs/dimg/history -I /mnt/devel/GIT/7.x/core/libs/dimg/loaders -I /mnt/devel/GIT/7.x/core/libs/dngwriter -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/7.x/core/libs/dplugins/core -I /mnt/devel/GIT/7.x/core/libs/dplugins/iface -I /mnt/devel/GIT/7.x/core/libs/dplugins/setup -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/7.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/7.x/core/libs/dragdrop -I /mnt/devel/GIT/7.x/core/libs/dtrash -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/7.x/core/libs/facesengine/common -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition -I /mnt/devel/GIT/7.x/core/libs/fileactionmanager -I /mnt/devel/GIT/7.x/core/libs/filters -I /mnt/devel/GIT/7.x/core/libs/iojobs -I /mnt/devel/GIT/7.x/core/libs/jpegutils -I /mnt/devel/GIT/7.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/7.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/7.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/7.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/7.x/core/libs/models -I /mnt/devel/GIT/7.x/core/libs/notificationmanager -I /mnt/devel/GIT/7.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/7.x/core/libs/pgfutils -I /mnt/devel/GIT/7.x/core/libs/progressmanager -I /mnt/devel/GIT/7.x/core/libs/properties/captions -I /mnt/devel/GIT/7.x/core/libs/properties/geolocation -I /mnt/devel/GIT/7.x/core/libs/properties/history -I /mnt/devel/GIT/7.x/core/libs/properties/import -I /mnt/devel/GIT/7.x/core/libs/properties -I /mnt/devel/GIT/7.x/core/libs/rawengine -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/7.x/core/libs/settings -I /mnt/devel/GIT/7.x/core/libs/tags/engine -I /mnt/devel/GIT/7.x/core/libs/tags/manager/models -I /mnt/devel/GIT/7.x/core/libs/tags/manager -I /mnt/devel/GIT/7.x/core/libs/tags/widgets -I /mnt/devel/GIT/7.x/core/libs/template -I /mnt/devel/GIT/7.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/7.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/7.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/7.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/7.x/core/libs/threadimageio/video -I /mnt/devel/GIT/7.x/core/libs/threads -I /mnt/devel/GIT/7.x/core/libs/timeadjust -I /mnt/devel/GIT/7.x/core/libs/transitionmngr -I /mnt/devel/GIT/7.x/core/libs/versionmanager -I /mnt/devel/GIT/7.x/core/libs/video/manager -I /mnt/devel/GIT/7.x/core/libs/video/player -I /mnt/devel/GIT/7.x/core/libs/widgets/colors -I /mnt/devel/GIT/7.x/core/libs/widgets/combo -I /mnt/devel/GIT/7.x/core/libs/widgets/files -I /mnt/devel/GIT/7.x/core/libs/widgets/fonts -I /mnt/devel/GIT/7.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/7.x/core/libs/widgets/history -I /mnt/devel/GIT/7.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/7.x/core/libs/widgets/itemview -I /mnt/devel/GIT/7.x/core/libs/widgets/layout -I /mnt/devel/GIT/7.x/core/libs/widgets/mainview -I /mnt/devel/GIT/7.x/core/libs/widgets/metadata -I /mnt/devel/GIT/7.x/core/libs/widgets/range -I /mnt/devel/GIT/7.x/core/libs/widgets/text -I /mnt/devel/GIT/7.x/core/showfoto/main -I /mnt/devel/GIT/7.x/core/showfoto/setup -I /mnt/devel/GIT/7.x/core/showfoto/thumbbar -I /mnt/devel/GIT/7.x/core/tests/advancedrename -I /mnt/devel/GIT/7.x/core/tests/albummodel -I /mnt/devel/GIT/7.x/core/tests/database -I /mnt/devel/GIT/7.x/core/tests/dimg -I /mnt/devel/GIT/7.x/core/tests/facesengine/demo -I /mnt/devel/GIT/7.x/core/tests/facesengine -I /mnt/devel/GIT/7.x/core/tests/fileio -I /mnt/devel/GIT/7.x/core/tests/geolocation/editor -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/7.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/7.x/core/tests/imgqsort -I /mnt/devel/GIT/7.x/core/tests/iojobs -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/editsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/fakeserver -I /mnt/devel/GIT/7.x/core/tests/metadataengine -I /mnt/devel/GIT/7.x/core/tests/modeltest -I /mnt/devel/GIT/7.x/core/tests/multithreading -I /mnt/devel/GIT/7.x/core/tests/timestampupdate -I /mnt/devel/GIT/7.x/core/tests/vkontakte -I /mnt/devel/GIT/7.x/core/tests/widgets -I /mnt/devel/GIT/7.x/core/utilities/advancedrename -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/bench -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/database -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/items -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/threads -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/widgets -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/workers -I /mnt/devel/GIT/7.x/core/utilities/firstrun -I /mnt/devel/GIT/7.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/7.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/7.x/core/utilities/import/backend -I /mnt/devel/GIT/7.x/core/utilities/import/dialogs -I /mnt/devel/GIT/7.x/core/utilities/import/items -I /mnt/devel/GIT/7.x/core/utilities/import/main -I /mnt/devel/GIT/7.x/core/utilities/import/models -I /mnt/devel/GIT/7.x/core/utilities/import/views -I /mnt/devel/GIT/7.x/core/utilities/import/widgets -I /mnt/devel/GIT/7.x/core/utilities/lighttable -I /mnt/devel/GIT/7.x/core/utilities/maintenance -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/7.x/core/utilities/searchwindow -I /mnt/devel/GIT/7.x/core/utilities/setup/album -I /mnt/devel/GIT/7.x/core/utilities/setup/camera -I /mnt/devel/GIT/7.x/core/utilities/setup/collections -I /mnt/devel/GIT/7.x/core/utilities/setup/editor -I /mnt/devel/GIT/7.x/core/utilities/setup/metadata -I /mnt/devel/GIT/7.x/core/utilities/setup -I /mnt/devel/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/7.x/build.scan/core/app/utils -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -I /usr/include/lqr-1 -I /usr/include/glib-2.0 -I /usr/lib64/glib-2.0/include -I /usr/lib64/qt5/include -I /usr/lib64/qt5/include/QtConcurrent -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtXml -I /usr/include/KF5/KConfigCore -I /usr/include/KF5 -I /usr/include/KF5/KI18n -I /usr/include/KF5/KWidgetsAddons -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtX11Extras -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/7.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/7.x/project/reports/report.scan/2020-05-22-222329-1869-1 -x c++ /mnt/devel/GIT/7.x/core/libs/dimg/dimg_data.cpp -faddrsig -
- - - -
- - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2005-06-14
7 * Description : digiKam 8/16 bits image management API.
8 * Data management.
9 *
10 * Copyright (C) 2005-2020 by Gilles Caulier <caulier dot gilles at gmail dot com>
11 * Copyright (C) 2006-2013 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
12 *
13 * This program is free software; you can redistribute it
14 * and/or modify it under the terms of the GNU General
15 * Public License as published by the Free Software Foundation;
16 * either version 2, or (at your option)
17 * any later version.
18 *
19 * This program is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
23 *
24 * ============================================================ */
25
26#include "dimg_p.h"
27
28namespace Digikam
29{
30
31DImg& DImg::operator=(const DImg& image)
32{
33 m_priv = image.m_priv;
34
35 return *this;
36}
37
38bool DImg::operator==(const DImg& image) const
39{
40 return (m_priv == image.m_priv);
41}
42
43void DImg::reset()
44{
45 m_priv = new Private;
46}
47
48void DImg::detach()
49{
50 // are we being shared?
51
52 if (m_priv->ref == 1)
53 {
54 return;
55 }
56
57 QExplicitlySharedDataPointer<Private> old(m_priv.data());
58
59 m_priv = new Private;
60 copyImageData(old);
61 copyMetaData(old);
62
63 if (old->data)
64 {
65 size_t size = allocateData();
66 memcpy(m_priv->data, old->data, size);
67 }
68}
69
70void DImg::putImageData(uint width, uint height, bool sixteenBit, bool alpha, uchar* const data, bool copyData)
71{
72 // set image data, metadata is untouched
73
74 bool null = (width == 0) || (height == 0);
1
Assuming 'width' is not equal to 0
2
Assuming 'height' is not equal to 0
75
76 // allocateData, or code below will set null to false
77
78 setImageData(true, width, height, sixteenBit, alpha);
79
80 // replace data
81
82 delete [] m_priv->data;
3
Memory is released
83
84 if (null)
4
Taking false branch
85 {
86 // image is null - no data
87
88 m_priv->data = nullptr;
89 }
90 else if (copyData)
5
Assuming 'copyData' is not equal to 0
6
Taking true branch
91 {
92 size_t size = allocateData();
93
94 if (data)
7
Assuming 'data' is non-null
8
Taking true branch
95 {
96 memcpy(m_priv->data, data, size);
9
Use of memory after it is freed
97 }
98 }
99 else
100 {
101 if (data)
102 {
103 m_priv->data = data;
104 m_priv->null = false;
105 }
106 else
107 {
108 allocateData();
109 }
110 }
111}
112
113void DImg::putImageData(uchar* const data, bool copyData)
114{
115 if (!data)
116 {
117 delete [] m_priv->data;
118 m_priv->data = nullptr;
119 m_priv->null = true;
120 }
121 else if (copyData)
122 {
123 memcpy(m_priv->data, data, numBytes());
124 }
125 else
126 {
127 m_priv->data = data;
128 }
129}
130
131void DImg::resetMetaData()
132{
133 QMutexLocker lock(&m_priv->mutex);
134
135 m_priv->attributes.clear();
136 m_priv->embeddedText.clear();
137 m_priv->metaData = MetaEngineData();
138}
139
140uchar* DImg::stripImageData()
141{
142 uchar* const data = m_priv->data;
143 m_priv->data = nullptr;
144 m_priv->null = true;
145
146 return data;
147}
148
149void DImg::copyMetaData(const QExplicitlySharedDataPointer<Private>& src)
150{
151 QMutexLocker lock(&m_priv->mutex);
152
153 m_priv->metaData = src->metaData;
154 m_priv->attributes = src->attributes;
155 m_priv->embeddedText = src->embeddedText;
156 m_priv->iccProfile = src->iccProfile;
157 m_priv->imageHistory = src->imageHistory;
158
159 // FIXME: what about sharing and deleting lanczos_func?
160}
161
162void DImg::copyImageData(const QExplicitlySharedDataPointer<Private>& src)
163{
164 setImageData(src->null, src->width, src->height, src->sixteenBit, src->alpha);
165}
166
167size_t DImg::allocateData() const
168{
169 quint64 size = (quint64)m_priv->width *
170 (quint64)m_priv->height *
171 (quint64)(m_priv->sixteenBit ? 8 : 4);
172
173 if (size >= std::numeric_limits<size_t>::max())
174 {
175 m_priv->null = true;
176
177 return 0;
178 }
179
180 m_priv->data = DImgLoader::new_failureTolerant(size);
181
182 if (!m_priv->data)
183 {
184 m_priv->null = true;
185
186 return 0;
187 }
188
189 m_priv->null = false;
190
191 return size;
192}
193
194void DImg::setImageDimension(uint width, uint height)
195{
196 m_priv->width = width;
197 m_priv->height = height;
198}
199
200void DImg::setImageData(bool null, uint width, uint height, bool sixteenBit, bool alpha)
201{
202 m_priv->null = null;
203 m_priv->width = width;
204 m_priv->height = height;
205 m_priv->alpha = alpha;
206 m_priv->sixteenBit = sixteenBit;
207}
208
209} // namespace Digikam
diff --git a/static/reports/clang/master/report-7acd77.html b/static/reports/clang/master/report-b67114.html similarity index 81% rename from static/reports/clang/master/report-7acd77.html rename to static/reports/clang/master/report-b67114.html index 76302d9f6..9743fcb86 100644 --- a/static/reports/clang/master/report-7acd77.html +++ b/static/reports/clang/master/report-b67114.html @@ -1,1116 +1,1116 @@ /usr/lib64/qt5/include/QtTest/qtestcase.h

Bug Summary

File:usr/lib64/qt5/include/QtTest/qtestcase.h
Warning:line 359, column 9
Potential memory leak

Annotated Source Code

Press '?' to see keyboard shortcuts

-
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name databasefieldstest.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -isystem /usr/include/opencv -isystem /usr/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtTest -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KI18n -isystem /usr/include/KF5 -isystem /usr/include/KF5/KXmlGui -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5/KConfigWidgets -isystem /usr/include/KF5/KCodecs -isystem /usr/include/KF5/KWidgetsAddons -isystem /usr/include/KF5/KConfigGui -isystem /usr/include/KF5/KAuth -isystem /usr/include/KF5/KCoreAddons -isystem /usr/lib64/qt5/include/QtDBus -isystem /usr/include/KF5/KNotifications -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -isystem /usr/lib64/qt5/include/QtWebKitWidgets -isystem /usr/lib64/qt5/include/QtWebKit -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_CONCURRENT_LIB -D QT_CORE_LIB -D QT_DBUS_LIB -D QT_GUI_LIB -D QT_NETWORK_LIB -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_SQL_LIB -D QT_TESTCASE_BUILDDIR="/mnt/devel/GIT/7.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -D QT_WEBKITWIDGETS_LIB -D QT_WEBKIT_LIB -D QT_WIDGETS_LIB -D QT_XMLPATTERNS_LIB -D QT_XML_LIB -D TRANSLATION_DOMAIN="digikam" -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -I /mnt/devel/GIT/7.x/build.scan/core/tests/database -I /mnt/devel/GIT/7.x/core/tests/database -I /mnt/devel/GIT/7.x/build.scan/core/tests/database/databasefieldstest_autogen/include -I /mnt/devel/GIT/7.x/core/app/date -I /mnt/devel/GIT/7.x/core/app/dragdrop -I /mnt/devel/GIT/7.x/core/app/filters -I /mnt/devel/GIT/7.x/core/app/items/delegate -I /mnt/devel/GIT/7.x/core/app/items/overlays -I /mnt/devel/GIT/7.x/core/app/items/thumbbar -I /mnt/devel/GIT/7.x/core/app/items/utils -I /mnt/devel/GIT/7.x/core/app/items/views -I /mnt/devel/GIT/7.x/core/app/main -I /mnt/devel/GIT/7.x/core/app/utils -I /mnt/devel/GIT/7.x/core/app/views/preview -I /mnt/devel/GIT/7.x/core/app/views/sidebar -I /mnt/devel/GIT/7.x/core/app/views/stack -I /mnt/devel/GIT/7.x/core/app/views/tableview -I /mnt/devel/GIT/7.x/core/app/views/utils -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/7.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/7.x/core/dplugins/dimg/png -I /mnt/devel/GIT/7.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/7.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/7.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/7.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/7.x/core/libs/album/engine -I /mnt/devel/GIT/7.x/core/libs/album/manager -I /mnt/devel/GIT/7.x/core/libs/album/treeview -I /mnt/devel/GIT/7.x/core/libs/album/widgets -I /mnt/devel/GIT/7.x/core/libs/database/collection -I /mnt/devel/GIT/7.x/core/libs/database/coredb -I /mnt/devel/GIT/7.x/core/libs/database/dbjobs -I /mnt/devel/GIT/7.x/core/libs/database/engine -I /mnt/devel/GIT/7.x/core/libs/database/haar -I /mnt/devel/GIT/7.x/core/libs/database/history -I /mnt/devel/GIT/7.x/core/libs/database/item/containers -I /mnt/devel/GIT/7.x/core/libs/database/item/lister -I /mnt/devel/GIT/7.x/core/libs/database/item/query -I /mnt/devel/GIT/7.x/core/libs/database/item/scanner -I /mnt/devel/GIT/7.x/core/libs/database/models -I /mnt/devel/GIT/7.x/core/libs/database/server -I /mnt/devel/GIT/7.x/core/libs/database/similaritydb -I /mnt/devel/GIT/7.x/core/libs/database/tags -I /mnt/devel/GIT/7.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/7.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/7.x/core/libs/database/utils/scan -I /mnt/devel/GIT/7.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/7.x/core/libs/dialogs -I /mnt/devel/GIT/7.x/core/libs/dimg/color -I /mnt/devel/GIT/7.x/core/libs/dimg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/7.x/core/libs/dimg/filters -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/raw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/7.x/core/libs/dimg/history -I /mnt/devel/GIT/7.x/core/libs/dimg/loaders -I /mnt/devel/GIT/7.x/core/libs/dngwriter -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/7.x/core/libs/dplugins/core -I /mnt/devel/GIT/7.x/core/libs/dplugins/iface -I /mnt/devel/GIT/7.x/core/libs/dplugins/setup -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/7.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/7.x/core/libs/dragdrop -I /mnt/devel/GIT/7.x/core/libs/dtrash -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/7.x/core/libs/facesengine/common -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition -I /mnt/devel/GIT/7.x/core/libs/fileactionmanager -I /mnt/devel/GIT/7.x/core/libs/filters -I /mnt/devel/GIT/7.x/core/libs/iojobs -I /mnt/devel/GIT/7.x/core/libs/jpegutils -I /mnt/devel/GIT/7.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/7.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/7.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/7.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/7.x/core/libs/models -I /mnt/devel/GIT/7.x/core/libs/notificationmanager -I /mnt/devel/GIT/7.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/7.x/core/libs/pgfutils -I /mnt/devel/GIT/7.x/core/libs/progressmanager -I /mnt/devel/GIT/7.x/core/libs/properties/captions -I /mnt/devel/GIT/7.x/core/libs/properties/geolocation -I /mnt/devel/GIT/7.x/core/libs/properties/history -I /mnt/devel/GIT/7.x/core/libs/properties/import -I /mnt/devel/GIT/7.x/core/libs/properties -I /mnt/devel/GIT/7.x/core/libs/rawengine -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/7.x/core/libs/settings -I /mnt/devel/GIT/7.x/core/libs/tags/engine -I /mnt/devel/GIT/7.x/core/libs/tags/manager/models -I /mnt/devel/GIT/7.x/core/libs/tags/manager -I /mnt/devel/GIT/7.x/core/libs/tags/widgets -I /mnt/devel/GIT/7.x/core/libs/template -I /mnt/devel/GIT/7.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/7.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/7.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/7.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/7.x/core/libs/threadimageio/video -I /mnt/devel/GIT/7.x/core/libs/threads -I /mnt/devel/GIT/7.x/core/libs/timeadjust -I /mnt/devel/GIT/7.x/core/libs/transitionmngr -I /mnt/devel/GIT/7.x/core/libs/versionmanager -I /mnt/devel/GIT/7.x/core/libs/video/manager -I /mnt/devel/GIT/7.x/core/libs/video/player -I /mnt/devel/GIT/7.x/core/libs/widgets/colors -I /mnt/devel/GIT/7.x/core/libs/widgets/combo -I /mnt/devel/GIT/7.x/core/libs/widgets/files -I /mnt/devel/GIT/7.x/core/libs/widgets/fonts -I /mnt/devel/GIT/7.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/7.x/core/libs/widgets/history -I /mnt/devel/GIT/7.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/7.x/core/libs/widgets/itemview -I /mnt/devel/GIT/7.x/core/libs/widgets/layout -I /mnt/devel/GIT/7.x/core/libs/widgets/mainview -I /mnt/devel/GIT/7.x/core/libs/widgets/metadata -I /mnt/devel/GIT/7.x/core/libs/widgets/range -I /mnt/devel/GIT/7.x/core/libs/widgets/text -I /mnt/devel/GIT/7.x/core/showfoto/main -I /mnt/devel/GIT/7.x/core/showfoto/setup -I /mnt/devel/GIT/7.x/core/showfoto/thumbbar -I /mnt/devel/GIT/7.x/core/tests/advancedrename -I /mnt/devel/GIT/7.x/core/tests/albummodel -I /mnt/devel/GIT/7.x/core/tests/dimg -I /mnt/devel/GIT/7.x/core/tests/facesengine/demo -I /mnt/devel/GIT/7.x/core/tests/facesengine -I /mnt/devel/GIT/7.x/core/tests/fileio -I /mnt/devel/GIT/7.x/core/tests/geolocation/editor -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/7.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/7.x/core/tests/imgqsort -I /mnt/devel/GIT/7.x/core/tests/iojobs -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/editsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/fakeserver -I /mnt/devel/GIT/7.x/core/tests/metadataengine -I /mnt/devel/GIT/7.x/core/tests/modeltest -I /mnt/devel/GIT/7.x/core/tests/multithreading -I /mnt/devel/GIT/7.x/core/tests/timestampupdate -I /mnt/devel/GIT/7.x/core/tests/vkontakte -I /mnt/devel/GIT/7.x/core/tests/widgets -I /mnt/devel/GIT/7.x/core/utilities/advancedrename -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/bench -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/database -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/items -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/threads -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/widgets -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/workers -I /mnt/devel/GIT/7.x/core/utilities/firstrun -I /mnt/devel/GIT/7.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/7.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/7.x/core/utilities/import/backend -I /mnt/devel/GIT/7.x/core/utilities/import/dialogs -I /mnt/devel/GIT/7.x/core/utilities/import/items -I /mnt/devel/GIT/7.x/core/utilities/import/main -I /mnt/devel/GIT/7.x/core/utilities/import/models -I /mnt/devel/GIT/7.x/core/utilities/import/views -I /mnt/devel/GIT/7.x/core/utilities/import/widgets -I /mnt/devel/GIT/7.x/core/utilities/lighttable -I /mnt/devel/GIT/7.x/core/utilities/maintenance -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/7.x/core/utilities/searchwindow -I /mnt/devel/GIT/7.x/core/utilities/setup/album -I /mnt/devel/GIT/7.x/core/utilities/setup/camera -I /mnt/devel/GIT/7.x/core/utilities/setup/collections -I /mnt/devel/GIT/7.x/core/utilities/setup/editor -I /mnt/devel/GIT/7.x/core/utilities/setup/metadata -I /mnt/devel/GIT/7.x/core/utilities/setup -I /mnt/devel/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/7.x/build.scan/core/app/utils -I /mnt/devel/GIT/7.x/build.scan/core/app -I /mnt/devel/GIT/7.x/core/app -I /mnt/devel/GIT/7.x/build.scan/core/tests -I /mnt/devel/GIT/7.x/core/tests -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/7.x/build.scan/core/tests/database -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/7.x/project/reports/report.scan/2020-05-22-222329-1869-1 -x c++ /mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp -faddrsig +
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name databasefieldstest.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -isystem /usr/include/opencv -isystem /usr/lib64/qt5/include -isystem /usr/lib64/qt5/include/QtTest -isystem /usr/lib64/qt5/include/QtCore -isystem /usr/lib64/qt5/./mkspecs/linux-g++ -isystem /usr/lib64/qt5/include/QtGui -isystem /usr/lib64/qt5/include/QtSql -isystem /usr/include/KF5/KI18n -isystem /usr/include/KF5 -isystem /usr/include/KF5/KXmlGui -isystem /usr/lib64/qt5/include/QtXml -isystem /usr/lib64/qt5/include/QtWidgets -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5/KConfigWidgets -isystem /usr/include/KF5/KCodecs -isystem /usr/include/KF5/KWidgetsAddons -isystem /usr/include/KF5/KConfigGui -isystem /usr/include/KF5/KAuth -isystem /usr/include/KF5/KCoreAddons -isystem /usr/lib64/qt5/include/QtDBus -isystem /usr/include/KF5/KNotifications -isystem /usr/lib64/qt5/include/QtXmlPatterns -isystem /usr/lib64/qt5/include/QtNetwork -isystem /usr/lib64/qt5/include/QtConcurrent -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/Solid -isystem /usr/lib64/qt5/include/QtWebKitWidgets -isystem /usr/lib64/qt5/include/QtWebKit -D KCOREADDONS_LIB -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_CONCURRENT_LIB -D QT_CORE_LIB -D QT_DBUS_LIB -D QT_GUI_LIB -D QT_NETWORK_LIB -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_SQL_LIB -D QT_TESTCASE_BUILDDIR="/home/gilles/Documents/GIT/7.x/build.scan" -D QT_TESTLIB_LIB -D QT_USE_QSTRINGBUILDER -D QT_WEBKITWIDGETS_LIB -D QT_WEBKIT_LIB -D QT_WIDGETS_LIB -D QT_XMLPATTERNS_LIB -D QT_XML_LIB -D TRANSLATION_DOMAIN="digikam" -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -I /home/gilles/Documents/GIT/7.x/build.scan/core/tests/database -I /home/gilles/Documents/GIT/7.x/core/tests/database -I /home/gilles/Documents/GIT/7.x/build.scan/core/tests/database/databasefieldstest_autogen/include -I /home/gilles/Documents/GIT/7.x/core/app/date -I /home/gilles/Documents/GIT/7.x/core/app/dragdrop -I /home/gilles/Documents/GIT/7.x/core/app/filters -I /home/gilles/Documents/GIT/7.x/core/app/items/delegate -I /home/gilles/Documents/GIT/7.x/core/app/items/overlays -I /home/gilles/Documents/GIT/7.x/core/app/items/thumbbar -I /home/gilles/Documents/GIT/7.x/core/app/items/utils -I /home/gilles/Documents/GIT/7.x/core/app/items/views -I /home/gilles/Documents/GIT/7.x/core/app/main -I /home/gilles/Documents/GIT/7.x/core/app/utils -I /home/gilles/Documents/GIT/7.x/core/app/views/preview -I /home/gilles/Documents/GIT/7.x/core/app/views/sidebar -I /home/gilles/Documents/GIT/7.x/core/app/views/stack -I /home/gilles/Documents/GIT/7.x/core/app/views/tableview -I /home/gilles/Documents/GIT/7.x/core/app/views/utils -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/invert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/custom/userscript -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/decorate/border -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/blur -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/crop -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/flip -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/resize -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/rotate -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libheif -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/imagemagick -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/jpeg -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/pgf -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/png -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/qimage -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/raw -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/tiff -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/bcg -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/film -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/hsl -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/invert -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/border -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/texture -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/blur -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/redeye -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/restoration -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/file/print -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/blurfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/charcoal -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/colorfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/emboss -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/raindrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/autocrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/freerotation -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/perspective -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/resize -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/shear -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/import/dscanner -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/glviewer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/common -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/box -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/facebook -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/flickr -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/imgur -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/rajce -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/twitter -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend/attic -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend/deprecated -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/darktable -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/native -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/ufraw -I /home/gilles/Documents/GIT/7.x/core/libs/album/engine -I /home/gilles/Documents/GIT/7.x/core/libs/album/manager -I /home/gilles/Documents/GIT/7.x/core/libs/album/treeview -I /home/gilles/Documents/GIT/7.x/core/libs/album/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/database/collection -I /home/gilles/Documents/GIT/7.x/core/libs/database/coredb -I /home/gilles/Documents/GIT/7.x/core/libs/database/dbjobs -I /home/gilles/Documents/GIT/7.x/core/libs/database/engine -I /home/gilles/Documents/GIT/7.x/core/libs/database/haar -I /home/gilles/Documents/GIT/7.x/core/libs/database/history -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/containers -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/lister -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/query -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/scanner -I /home/gilles/Documents/GIT/7.x/core/libs/database/models -I /home/gilles/Documents/GIT/7.x/core/libs/database/server -I /home/gilles/Documents/GIT/7.x/core/libs/database/similaritydb -I /home/gilles/Documents/GIT/7.x/core/libs/database/tags -I /home/gilles/Documents/GIT/7.x/core/libs/database/thumbsdb -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/ifaces -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/scan -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/dialogs -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/color -I /home/gilles/Documents/GIT/7.x/core/libs/dimg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/auto -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/bcg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/bw -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/cb -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/curves -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/decorate -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/film -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/fx -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/greycstoration -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/hsl -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/icc -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/imgqsort -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/lc -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/lens -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/levels -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/nr -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/raw -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/redeye -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/sharp -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/transform -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/wb -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/history -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/loaders -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/md5 -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/core -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/iface -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/setup -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/msgraphdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/msgraphexternalinterceptordemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/vimeodemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/youtubedemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/dragdrop -I /home/gilles/Documents/GIT/7.x/core/libs/dtrash -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/alignment/congealing -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/common -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/facedb -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition -I /home/gilles/Documents/GIT/7.x/core/libs/fileactionmanager -I /home/gilles/Documents/GIT/7.x/core/libs/filters -I /home/gilles/Documents/GIT/7.x/core/libs/iojobs -I /home/gilles/Documents/GIT/7.x/core/libs/jpegutils -I /home/gilles/Documents/GIT/7.x/core/libs/kmemoryinfo -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/containers -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/dmetadata -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/engine -I /home/gilles/Documents/GIT/7.x/core/libs/models -I /home/gilles/Documents/GIT/7.x/core/libs/notificationmanager -I /home/gilles/Documents/GIT/7.x/core/libs/pgfutils/libpgf -I /home/gilles/Documents/GIT/7.x/core/libs/pgfutils -I /home/gilles/Documents/GIT/7.x/core/libs/progressmanager -I /home/gilles/Documents/GIT/7.x/core/libs/properties/captions -I /home/gilles/Documents/GIT/7.x/core/libs/properties/geolocation -I /home/gilles/Documents/GIT/7.x/core/libs/properties/history -I /home/gilles/Documents/GIT/7.x/core/libs/properties/import -I /home/gilles/Documents/GIT/7.x/core/libs/properties -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine/libraw/internal -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine/libraw/libraw -I /home/gilles/Documents/GIT/7.x/core/libs/settings -I /home/gilles/Documents/GIT/7.x/core/libs/tags/engine -I /home/gilles/Documents/GIT/7.x/core/libs/tags/manager/models -I /home/gilles/Documents/GIT/7.x/core/libs/tags/manager -I /home/gilles/Documents/GIT/7.x/core/libs/tags/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/template -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/engine -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/fileio -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/preview -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/thumb -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/video -I /home/gilles/Documents/GIT/7.x/core/libs/threads -I /home/gilles/Documents/GIT/7.x/core/libs/timeadjust -I /home/gilles/Documents/GIT/7.x/core/libs/transitionmngr -I /home/gilles/Documents/GIT/7.x/core/libs/versionmanager -I /home/gilles/Documents/GIT/7.x/core/libs/video/manager -I /home/gilles/Documents/GIT/7.x/core/libs/video/player -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/colors -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/combo -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/files -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/fonts -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/graphicsview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/history -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/iccprofiles -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/itemview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/layout -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/mainview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/metadata -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/range -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/text -I /home/gilles/Documents/GIT/7.x/core/showfoto/main -I /home/gilles/Documents/GIT/7.x/core/showfoto/setup -I /home/gilles/Documents/GIT/7.x/core/showfoto/thumbbar -I /home/gilles/Documents/GIT/7.x/core/tests/advancedrename -I /home/gilles/Documents/GIT/7.x/core/tests/albummodel -I /home/gilles/Documents/GIT/7.x/core/tests/dimg -I /home/gilles/Documents/GIT/7.x/core/tests/facesengine/demo -I /home/gilles/Documents/GIT/7.x/core/tests/facesengine -I /home/gilles/Documents/GIT/7.x/core/tests/fileio -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/editor -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface/demo -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/kmlexport -I /home/gilles/Documents/GIT/7.x/core/tests/imgqsort -I /home/gilles/Documents/GIT/7.x/core/tests/iojobs -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/examples/editsample -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/fakeserver -I /home/gilles/Documents/GIT/7.x/core/tests/metadataengine -I /home/gilles/Documents/GIT/7.x/core/tests/modeltest -I /home/gilles/Documents/GIT/7.x/core/tests/multithreading -I /home/gilles/Documents/GIT/7.x/core/tests/timestampupdate -I /home/gilles/Documents/GIT/7.x/core/tests/vkontakte -I /home/gilles/Documents/GIT/7.x/core/tests/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/common -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /home/gilles/Documents/GIT/7.x/core/utilities/extrasupport/addressbook -I /home/gilles/Documents/GIT/7.x/core/utilities/extrasupport/filesindexer -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/bench -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/database -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/items -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/threads -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/workers -I /home/gilles/Documents/GIT/7.x/core/utilities/firstrun -I /home/gilles/Documents/GIT/7.x/core/utilities/fuzzysearch -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/core -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/items -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/mapsearches -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/core -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/dialogs -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/editor -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/main -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/import/backend -I /home/gilles/Documents/GIT/7.x/core/utilities/import/dialogs -I /home/gilles/Documents/GIT/7.x/core/utilities/import/items -I /home/gilles/Documents/GIT/7.x/core/utilities/import/main -I /home/gilles/Documents/GIT/7.x/core/utilities/import/models -I /home/gilles/Documents/GIT/7.x/core/utilities/import/views -I /home/gilles/Documents/GIT/7.x/core/utilities/import/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/lighttable -I /home/gilles/Documents/GIT/7.x/core/utilities/maintenance -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/dplugins -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/main -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/manager -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/views -I /home/gilles/Documents/GIT/7.x/core/utilities/searchwindow -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/album -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/camera -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/collections -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/editor -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/metadata -I /home/gilles/Documents/GIT/7.x/core/utilities/setup -I /home/gilles/Documents/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /home/gilles/Documents/GIT/7.x/build.scan/core/app/utils -I /home/gilles/Documents/GIT/7.x/build.scan/core/app -I /home/gilles/Documents/GIT/7.x/core/app -I /home/gilles/Documents/GIT/7.x/build.scan/core/tests -I /home/gilles/Documents/GIT/7.x/core/tests -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/ImageMagick-7 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=gnu++11 -fdeprecated-macro -fdebug-compilation-dir /home/gilles/Documents/GIT/7.x/build.scan/core/tests/database -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fno-operator-names -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /home/gilles/Documents/GIT/7.x/project/reports/report.scan/2020-05-28-132109-7449-1 -x c++ /home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp -faddrsig
-

/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp

+

/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp

- + - + - + - - - - - - - + + + + + + + - + - + - + - - - - - - + + + + + + - - - - - - - + + + + + + + - + - - + + - - + + - - - + + + - - + + - - + + - - + + - - + + - - + + - - + + - - + + - + - + - - - - - - - + + + + + + +
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2013-06-29
7 * Description : Test the functions for dealing with DatabaseFields
8 *
9 * Copyright (C) 2013 by Michael G. Hansen <mike at mghansen dot de>
10 *
11 * This program is free software; you can redistribute it
12 * and/or modify it under the terms of the GNU General
13 * Public License as published by the Free Software Foundation;
14 * either version 2, or (at your option)
15 * any later version.
16 *
17 * This program is distributed in the hope that it will be useful,
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20 * GNU General Public License for more details.
21 *
22 * ============================================================ */
23
24#include "databasefieldstest.h"
25
26// Qt includes
27
28#include <QTest>
29
30// Local includes
31
32#include "coredbfields.h"
33
34using namespace Digikam;
35
36QTEST_GUILESS_MAIN(DatabaseFieldsTest)int main(int argc, char *argv[]) { QCoreApplication app(argc,
argv); app.setAttribute(Qt::AA_Use96Dpi, true); DatabaseFieldsTest
tc; QTest::setMainSourcePath("/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, "/mnt/devel/GIT/7.x/build.scan"); return QTest::qExec(&
tc, argc, argv); }
36QTEST_GUILESS_MAIN(DatabaseFieldsTest)int main(int argc, char *argv[]) { QCoreApplication app(argc,
argv); app.setAttribute(Qt::AA_Use96Dpi, true); DatabaseFieldsTest
tc; QTest::setMainSourcePath("/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, "/home/gilles/Documents/GIT/7.x/build.scan"); return QTest::
qExec(&tc, argc, argv); }
37
38using namespace DatabaseFields;
39
40void DatabaseFieldsTest::cleanupTestCase()
41{
42}
43
44void DatabaseFieldsTest::initTestCase()
45{
46}
47
48#define DECLARE_ITERATOR_TEST(Field){ Field i; for (FieldIterator it; !it.atEnd(); ++it) { i |= *
it; } do { if (!QTest::qCompare(i, FieldAll, "i", "FieldAll",
"/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 48)) return;} while (false); }
\
48#define DECLARE_ITERATOR_TEST(Field){ Field i; for (FieldIterator it; !it.atEnd(); ++it) { i |= *
it; } do { if (!QTest::qCompare(i, FieldAll, "i", "FieldAll",
"/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 48)) return;} while (false); }
\
49{ \
50 Field i; \
51 for (Field##Iterator it; !it.atEnd(); ++it) \
52 { \
53 i |= *it; \
54 } \
55 QCOMPARE(i, Field##All)do { if (!QTest::qCompare(i, Field##All, "i", "Field##All", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 55)) return;} while (false)
; \
55 QCOMPARE(i, Field##All)do { if (!QTest::qCompare(i, Field##All, "i", "Field##All", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 55)) return;} while (false)
; \
56}
57
58void DatabaseFieldsTest::testIterators()
59{
60 // test that the iterator iterates over all fields
61 DECLARE_ITERATOR_TEST(Images){ Images i; for (ImagesIterator it; !it.atEnd(); ++it) { i |=
*it; } do { if (!QTest::qCompare(i, ImagesAll, "i", "ImagesAll"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 61)) return;} while (false); }
62 DECLARE_ITERATOR_TEST(ItemInformation){ ItemInformation i; for (ItemInformationIterator it; !it.atEnd
(); ++it) { i |= *it; } do { if (!QTest::qCompare(i, ItemInformationAll
, "i", "ItemInformationAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 62)) return;} while (false); }
63 DECLARE_ITERATOR_TEST(ImageMetadata){ ImageMetadata i; for (ImageMetadataIterator it; !it.atEnd()
; ++it) { i |= *it; } do { if (!QTest::qCompare(i, ImageMetadataAll
, "i", "ImageMetadataAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 63)) return;} while (false); }
64 DECLARE_ITERATOR_TEST(VideoMetadata){ VideoMetadata i; for (VideoMetadataIterator it; !it.atEnd()
; ++it) { i |= *it; } do { if (!QTest::qCompare(i, VideoMetadataAll
, "i", "VideoMetadataAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 64)) return;} while (false); }
65 DECLARE_ITERATOR_TEST(ItemPositions){ ItemPositions i; for (ItemPositionsIterator it; !it.atEnd()
; ++it) { i |= *it; } do { if (!QTest::qCompare(i, ItemPositionsAll
, "i", "ItemPositionsAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 65)) return;} while (false); }
66 DECLARE_ITERATOR_TEST(ItemComments){ ItemComments i; for (ItemCommentsIterator it; !it.atEnd(); ++
it) { i |= *it; } do { if (!QTest::qCompare(i, ItemCommentsAll
, "i", "ItemCommentsAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 66)) return;} while (false); }
67 DECLARE_ITERATOR_TEST(ImageHistoryInfo){ ImageHistoryInfo i; for (ImageHistoryInfoIterator it; !it.atEnd
(); ++it) { i |= *it; } do { if (!QTest::qCompare(i, ImageHistoryInfoAll
, "i", "ImageHistoryInfoAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 67)) return;} while (false); }
61 DECLARE_ITERATOR_TEST(Images){ Images i; for (ImagesIterator it; !it.atEnd(); ++it) { i |=
*it; } do { if (!QTest::qCompare(i, ImagesAll, "i", "ImagesAll"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 61)) return;} while (false); }
62 DECLARE_ITERATOR_TEST(ItemInformation){ ItemInformation i; for (ItemInformationIterator it; !it.atEnd
(); ++it) { i |= *it; } do { if (!QTest::qCompare(i, ItemInformationAll
, "i", "ItemInformationAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 62)) return;} while (false); }
63 DECLARE_ITERATOR_TEST(ImageMetadata){ ImageMetadata i; for (ImageMetadataIterator it; !it.atEnd()
; ++it) { i |= *it; } do { if (!QTest::qCompare(i, ImageMetadataAll
, "i", "ImageMetadataAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 63)) return;} while (false); }
64 DECLARE_ITERATOR_TEST(VideoMetadata){ VideoMetadata i; for (VideoMetadataIterator it; !it.atEnd()
; ++it) { i |= *it; } do { if (!QTest::qCompare(i, VideoMetadataAll
, "i", "VideoMetadataAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 64)) return;} while (false); }
65 DECLARE_ITERATOR_TEST(ItemPositions){ ItemPositions i; for (ItemPositionsIterator it; !it.atEnd()
; ++it) { i |= *it; } do { if (!QTest::qCompare(i, ItemPositionsAll
, "i", "ItemPositionsAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 65)) return;} while (false); }
66 DECLARE_ITERATOR_TEST(ItemComments){ ItemComments i; for (ItemCommentsIterator it; !it.atEnd(); ++
it) { i |= *it; } do { if (!QTest::qCompare(i, ItemCommentsAll
, "i", "ItemCommentsAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 66)) return;} while (false); }
67 DECLARE_ITERATOR_TEST(ImageHistoryInfo){ ImageHistoryInfo i; for (ImageHistoryInfoIterator it; !it.atEnd
(); ++it) { i |= *it; } do { if (!QTest::qCompare(i, ImageHistoryInfoAll
, "i", "ImageHistoryInfoAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 67)) return;} while (false); }
68}
69
70void DatabaseFieldsTest::testMetaInfo()
71{
72// Do not compile due to undefined reference to `Digikam::DatabaseFields::FieldMetaInfo<QFlags<Digikam::DatabaseFields::ImagesField> >::Last'
73// Happens even though file defining those libs/database/framework/databasefields.h is included and linking against digikamgui.
74
75
76/*
77 QCOMPARE(FieldMetaInfo<Images>::Last, ImagesLast);
78 QCOMPARE(FieldMetaInfo<ItemInformation>::Last, ItemInformationLast);
79 QCOMPARE(FieldMetaInfo<ImageMetadata>::Last, ImageMetadataLast);
80 QCOMPARE(FieldMetaInfo<ItemComments>::Last, ItemCommentsLast);
81 QCOMPARE(FieldMetaInfo<ItemPositions>::Last, ItemPositionsLast);
82 QCOMPARE(FieldMetaInfo<ImageHistoryInfo>::Last, ImageHistoryInfoLast);
83 QCOMPARE(FieldMetaInfo<VideoMetadata>::Last, VideoMetadataLast);
84*/
85}
86
87#define DECLARE_ITERATORSETONLY_TEST(Field)for (Field i = FieldNone; i<=FieldAll; i=Field(int(i)+1)) {
Field i2 = FieldNone; for (DatabaseFieldsEnumIteratorSetOnly
<Field> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly
; } do { if (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 87)) return;} while (false); }
\
87#define DECLARE_ITERATORSETONLY_TEST(Field)for (Field i = FieldNone; i<=FieldAll; i=Field(int(i)+1)) {
Field i2 = FieldNone; for (DatabaseFieldsEnumIteratorSetOnly
<Field> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly
; } do { if (!QTest::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 87)) return;} while (false); }
\
88 for (Field i = Field##None; i<=Field##All; i=Field(int(i)+1)) \
89 { \
90 Field i2 = Field##None; \
91 for (DatabaseFieldsEnumIteratorSetOnly<Field> iOnly(i); !iOnly.atEnd(); ++iOnly) \
92 { \
93 i2 |= *iOnly; \
94 } \
95 QCOMPARE(i, i2)do { if (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 95)) return;} while (false)
; \
95 QCOMPARE(i, i2)do { if (!QTest::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 95)) return;} while (false)
; \
96 }
97
98void DatabaseFieldsTest::testIteratorsSetOnly()
99{
100 DECLARE_ITERATORSETONLY_TEST(Images)for (Images i = ImagesNone; i<=ImagesAll; i=Images(int(i)+
1)) { Images i2 = ImagesNone; for (DatabaseFieldsEnumIteratorSetOnly
<Images> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly
; } do { if (!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 100)) return;} while (false); }
100 DECLARE_ITERATORSETONLY_TEST(Images)for (Images i = ImagesNone; i<=ImagesAll; i=Images(int(i)+
1)) { Images i2 = ImagesNone; for (DatabaseFieldsEnumIteratorSetOnly
<Images> iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly
; } do { if (!QTest::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 100)) return;} while (false); }
1
Loop condition is true. Entering loop body
2
Loop condition is false. Execution continues on line 100
3
Calling 'qCompare<QFlags<Digikam::DatabaseFields::ImagesField>>'
101 DECLARE_ITERATORSETONLY_TEST(ItemInformation)for (ItemInformation i = ItemInformationNone; i<=ItemInformationAll
; i=ItemInformation(int(i)+1)) { ItemInformation i2 = ItemInformationNone
; for (DatabaseFieldsEnumIteratorSetOnly<ItemInformation>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 101)) return;} while (false); }
102 DECLARE_ITERATORSETONLY_TEST(ImageMetadata)for (ImageMetadata i = ImageMetadataNone; i<=ImageMetadataAll
; i=ImageMetadata(int(i)+1)) { ImageMetadata i2 = ImageMetadataNone
; for (DatabaseFieldsEnumIteratorSetOnly<ImageMetadata>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 102)) return;} while (false); }
103 DECLARE_ITERATORSETONLY_TEST(VideoMetadata)for (VideoMetadata i = VideoMetadataNone; i<=VideoMetadataAll
; i=VideoMetadata(int(i)+1)) { VideoMetadata i2 = VideoMetadataNone
; for (DatabaseFieldsEnumIteratorSetOnly<VideoMetadata>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 103)) return;} while (false); }
104 DECLARE_ITERATORSETONLY_TEST(ItemPositions)for (ItemPositions i = ItemPositionsNone; i<=ItemPositionsAll
; i=ItemPositions(int(i)+1)) { ItemPositions i2 = ItemPositionsNone
; for (DatabaseFieldsEnumIteratorSetOnly<ItemPositions>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 104)) return;} while (false); }
105 DECLARE_ITERATORSETONLY_TEST(ItemComments)for (ItemComments i = ItemCommentsNone; i<=ItemCommentsAll
; i=ItemComments(int(i)+1)) { ItemComments i2 = ItemCommentsNone
; for (DatabaseFieldsEnumIteratorSetOnly<ItemComments> iOnly
(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if (!QTest
::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 105)) return;} while (false); }
106 DECLARE_ITERATORSETONLY_TEST(ImageHistoryInfo)for (ImageHistoryInfo i = ImageHistoryInfoNone; i<=ImageHistoryInfoAll
; i=ImageHistoryInfo(int(i)+1)) { ImageHistoryInfo i2 = ImageHistoryInfoNone
; for (DatabaseFieldsEnumIteratorSetOnly<ImageHistoryInfo>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 106)) return;} while (false); }
101 DECLARE_ITERATORSETONLY_TEST(ItemInformation)for (ItemInformation i = ItemInformationNone; i<=ItemInformationAll
; i=ItemInformation(int(i)+1)) { ItemInformation i2 = ItemInformationNone
; for (DatabaseFieldsEnumIteratorSetOnly<ItemInformation>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 101)) return;} while (false); }
102 DECLARE_ITERATORSETONLY_TEST(ImageMetadata)for (ImageMetadata i = ImageMetadataNone; i<=ImageMetadataAll
; i=ImageMetadata(int(i)+1)) { ImageMetadata i2 = ImageMetadataNone
; for (DatabaseFieldsEnumIteratorSetOnly<ImageMetadata>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 102)) return;} while (false); }
103 DECLARE_ITERATORSETONLY_TEST(VideoMetadata)for (VideoMetadata i = VideoMetadataNone; i<=VideoMetadataAll
; i=VideoMetadata(int(i)+1)) { VideoMetadata i2 = VideoMetadataNone
; for (DatabaseFieldsEnumIteratorSetOnly<VideoMetadata>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 103)) return;} while (false); }
104 DECLARE_ITERATORSETONLY_TEST(ItemPositions)for (ItemPositions i = ItemPositionsNone; i<=ItemPositionsAll
; i=ItemPositions(int(i)+1)) { ItemPositions i2 = ItemPositionsNone
; for (DatabaseFieldsEnumIteratorSetOnly<ItemPositions>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 104)) return;} while (false); }
105 DECLARE_ITERATORSETONLY_TEST(ItemComments)for (ItemComments i = ItemCommentsNone; i<=ItemCommentsAll
; i=ItemComments(int(i)+1)) { ItemComments i2 = ItemCommentsNone
; for (DatabaseFieldsEnumIteratorSetOnly<ItemComments> iOnly
(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if (!QTest
::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 105)) return;} while (false); }
106 DECLARE_ITERATORSETONLY_TEST(ImageHistoryInfo)for (ImageHistoryInfo i = ImageHistoryInfoNone; i<=ImageHistoryInfoAll
; i=ImageHistoryInfo(int(i)+1)) { ImageHistoryInfo i2 = ImageHistoryInfoNone
; for (DatabaseFieldsEnumIteratorSetOnly<ImageHistoryInfo>
iOnly(i); !iOnly.atEnd(); ++iOnly) { i2 |= *iOnly; } do { if
(!QTest::qCompare(i, i2, "i", "i2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 106)) return;} while (false); }
107}
108
109void DatabaseFieldsTest::testSet()
110{
111 QCOMPARE(Set(ImagesFirst).getImages(), ImagesFirst)do { if (!QTest::qCompare(Set(ImagesFirst).getImages(), ImagesFirst
, "Set(ImagesFirst).getImages()", "ImagesFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 111)) return;} while (false)
;
112 QCOMPARE(Set(ItemInformationFirst).getItemInformation(), ItemInformationFirst)do { if (!QTest::qCompare(Set(ItemInformationFirst).getItemInformation
(), ItemInformationFirst, "Set(ItemInformationFirst).getItemInformation()"
, "ItemInformationFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 112)) return;} while (false)
;
113 QCOMPARE(Set(ImageMetadataFirst).getImageMetadata(), ImageMetadataFirst)do { if (!QTest::qCompare(Set(ImageMetadataFirst).getImageMetadata
(), ImageMetadataFirst, "Set(ImageMetadataFirst).getImageMetadata()"
, "ImageMetadataFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 113)) return;} while (false)
;
114 QCOMPARE(Set(VideoMetadataFirst).getVideoMetadata(), VideoMetadataFirst)do { if (!QTest::qCompare(Set(VideoMetadataFirst).getVideoMetadata
(), VideoMetadataFirst, "Set(VideoMetadataFirst).getVideoMetadata()"
, "VideoMetadataFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 114)) return;} while (false)
;
115 QCOMPARE(Set(ItemPositionsFirst).getItemPositions(), ItemPositionsFirst)do { if (!QTest::qCompare(Set(ItemPositionsFirst).getItemPositions
(), ItemPositionsFirst, "Set(ItemPositionsFirst).getItemPositions()"
, "ItemPositionsFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 115)) return;} while (false)
;
116 QCOMPARE(Set(ItemCommentsFirst).getItemComments(), ItemCommentsFirst)do { if (!QTest::qCompare(Set(ItemCommentsFirst).getItemComments
(), ItemCommentsFirst, "Set(ItemCommentsFirst).getItemComments()"
, "ItemCommentsFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 116)) return;} while (false)
;
117 QCOMPARE(Set(ImageHistoryInfoFirst).getImageHistoryInfo(), ImageHistoryInfoFirst)do { if (!QTest::qCompare(Set(ImageHistoryInfoFirst).getImageHistoryInfo
(), ImageHistoryInfoFirst, "Set(ImageHistoryInfoFirst).getImageHistoryInfo()"
, "ImageHistoryInfoFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 117)) return;} while (false)
;
111 QCOMPARE(Set(ImagesFirst).getImages(), ImagesFirst)do { if (!QTest::qCompare(Set(ImagesFirst).getImages(), ImagesFirst
, "Set(ImagesFirst).getImages()", "ImagesFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 111)) return;} while (false)
;
112 QCOMPARE(Set(ItemInformationFirst).getItemInformation(), ItemInformationFirst)do { if (!QTest::qCompare(Set(ItemInformationFirst).getItemInformation
(), ItemInformationFirst, "Set(ItemInformationFirst).getItemInformation()"
, "ItemInformationFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 112)) return;} while (false)
;
113 QCOMPARE(Set(ImageMetadataFirst).getImageMetadata(), ImageMetadataFirst)do { if (!QTest::qCompare(Set(ImageMetadataFirst).getImageMetadata
(), ImageMetadataFirst, "Set(ImageMetadataFirst).getImageMetadata()"
, "ImageMetadataFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 113)) return;} while (false)
;
114 QCOMPARE(Set(VideoMetadataFirst).getVideoMetadata(), VideoMetadataFirst)do { if (!QTest::qCompare(Set(VideoMetadataFirst).getVideoMetadata
(), VideoMetadataFirst, "Set(VideoMetadataFirst).getVideoMetadata()"
, "VideoMetadataFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 114)) return;} while (false)
;
115 QCOMPARE(Set(ItemPositionsFirst).getItemPositions(), ItemPositionsFirst)do { if (!QTest::qCompare(Set(ItemPositionsFirst).getItemPositions
(), ItemPositionsFirst, "Set(ItemPositionsFirst).getItemPositions()"
, "ItemPositionsFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 115)) return;} while (false)
;
116 QCOMPARE(Set(ItemCommentsFirst).getItemComments(), ItemCommentsFirst)do { if (!QTest::qCompare(Set(ItemCommentsFirst).getItemComments
(), ItemCommentsFirst, "Set(ItemCommentsFirst).getItemComments()"
, "ItemCommentsFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 116)) return;} while (false)
;
117 QCOMPARE(Set(ImageHistoryInfoFirst).getImageHistoryInfo(), ImageHistoryInfoFirst)do { if (!QTest::qCompare(Set(ImageHistoryInfoFirst).getImageHistoryInfo
(), ImageHistoryInfoFirst, "Set(ImageHistoryInfoFirst).getImageHistoryInfo()"
, "ImageHistoryInfoFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 117)) return;} while (false)
;
118}
119
120typedef Hash<Set> SetHash;
121
122SetHash SetHashAddSets(const SetHash& targetIn, const Set& bits)
123{
124 SetHash target(targetIn);
125
126 for (DatabaseFieldsEnumIteratorSetOnly<Images> it(bits.getImages()); !it.atEnd(); ++it)
127 {
128 target.insertField(*it, Set(*it));
129 }
130
131 for (DatabaseFieldsEnumIteratorSetOnly<ItemInformation> it(bits.getItemInformation()); !it.atEnd(); ++it)
132 {
133 target.insertField(*it, Set(*it));
134 }
135
136 for (DatabaseFieldsEnumIteratorSetOnly<ImageMetadata> it(bits.getImageMetadata()); !it.atEnd(); ++it)
137 {
138 target.insertField(*it, Set(*it));
139 }
140
141 for (DatabaseFieldsEnumIteratorSetOnly<VideoMetadata> it(bits.getVideoMetadata()); !it.atEnd(); ++it)
142 {
143 target.insertField(*it, Set(*it));
144 }
145
146 for (DatabaseFieldsEnumIteratorSetOnly<ItemComments> it(bits.getItemComments()); !it.atEnd(); ++it)
147 {
148 target.insertField(*it, Set(*it));
149 }
150
151 for (DatabaseFieldsEnumIteratorSetOnly<ItemPositions> it(bits.getItemPositions()); !it.atEnd(); ++it)
152 {
153 target.insertField(*it, Set(*it));
154 }
155
156 for (DatabaseFieldsEnumIteratorSetOnly<ImageHistoryInfo> it(bits.getImageHistoryInfo()); !it.atEnd(); ++it)
157 {
158 target.insertField(*it, Set(*it));
159 }
160
161 return target;
162}
163
164void DatabaseFieldsTest::testSetHashAddSets()
165{
166 SetHash t;
167 int itemCount = 0;
168
169 QVERIFY(t.isEmpty())do { if (!QTest::qVerify(static_cast<bool>(t.isEmpty())
, "t.isEmpty()", "", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 169)) return;} while (false)
;
169 QVERIFY(t.isEmpty())do { if (!QTest::qVerify(static_cast<bool>(t.isEmpty())
, "t.isEmpty()", "", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 169)) return;} while (false)
;
170 t = SetHashAddSets(t, DatabaseFields::Set(ImagesFirst));
171 ++itemCount;
172 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 172)) return;} while (false)
;
173 QCOMPARE(t.value(ImagesFirst).getImages(), ImagesFirst)do { if (!QTest::qCompare(t.value(ImagesFirst).getImages(), ImagesFirst
, "t.value(ImagesFirst).getImages()", "ImagesFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 173)) return;} while (false)
;
172 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 172)) return;} while (false)
;
173 QCOMPARE(t.value(ImagesFirst).getImages(), ImagesFirst)do { if (!QTest::qCompare(t.value(ImagesFirst).getImages(), ImagesFirst
, "t.value(ImagesFirst).getImages()", "ImagesFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 173)) return;} while (false)
;
174
175 t = SetHashAddSets(t, DatabaseFields::Set(ImagesLast));
176 ++itemCount;
177 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 177)) return;} while (false)
;
178 QCOMPARE(t.value(ImagesFirst).getImages(), ImagesFirst)do { if (!QTest::qCompare(t.value(ImagesFirst).getImages(), ImagesFirst
, "t.value(ImagesFirst).getImages()", "ImagesFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 178)) return;} while (false)
;
177 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 177)) return;} while (false)
;
178 QCOMPARE(t.value(ImagesFirst).getImages(), ImagesFirst)do { if (!QTest::qCompare(t.value(ImagesFirst).getImages(), ImagesFirst
, "t.value(ImagesFirst).getImages()", "ImagesFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 178)) return;} while (false)
;
179
180 // test insertion of or`ed values
181 t = SetHashAddSets(t, DatabaseFields::Set(ItemInformationFirst | ItemInformationLast));
182 itemCount+=2;
183 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 183)) return;} while (false)
;
184 QCOMPARE(t.value(ItemInformationFirst).getItemInformation(), ItemInformationFirst)do { if (!QTest::qCompare(t.value(ItemInformationFirst).getItemInformation
(), ItemInformationFirst, "t.value(ItemInformationFirst).getItemInformation()"
, "ItemInformationFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 184)) return;} while (false)
;
185 QCOMPARE(t.value(ItemInformationLast).getItemInformation(), ItemInformationLast)do { if (!QTest::qCompare(t.value(ItemInformationLast).getItemInformation
(), ItemInformationLast, "t.value(ItemInformationLast).getItemInformation()"
, "ItemInformationLast", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 185)) return;} while (false)
;
183 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 183)) return;} while (false)
;
184 QCOMPARE(t.value(ItemInformationFirst).getItemInformation(), ItemInformationFirst)do { if (!QTest::qCompare(t.value(ItemInformationFirst).getItemInformation
(), ItemInformationFirst, "t.value(ItemInformationFirst).getItemInformation()"
, "ItemInformationFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 184)) return;} while (false)
;
185 QCOMPARE(t.value(ItemInformationLast).getItemInformation(), ItemInformationLast)do { if (!QTest::qCompare(t.value(ItemInformationLast).getItemInformation
(), ItemInformationLast, "t.value(ItemInformationLast).getItemInformation()"
, "ItemInformationLast", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 185)) return;} while (false)
;
186
187 t = SetHashAddSets(t, DatabaseFields::Set(ImageMetadataFirst));
188 ++itemCount;
189 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 189)) return;} while (false)
;
190 QCOMPARE(t.value(ImageMetadataFirst).getImageMetadata(), ImageMetadataFirst)do { if (!QTest::qCompare(t.value(ImageMetadataFirst).getImageMetadata
(), ImageMetadataFirst, "t.value(ImageMetadataFirst).getImageMetadata()"
, "ImageMetadataFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 190)) return;} while (false)
;
189 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 189)) return;} while (false)
;
190 QCOMPARE(t.value(ImageMetadataFirst).getImageMetadata(), ImageMetadataFirst)do { if (!QTest::qCompare(t.value(ImageMetadataFirst).getImageMetadata
(), ImageMetadataFirst, "t.value(ImageMetadataFirst).getImageMetadata()"
, "ImageMetadataFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 190)) return;} while (false)
;
191
192 t = SetHashAddSets(t, DatabaseFields::Set(VideoMetadataFirst));
193 ++itemCount;
194 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 194)) return;} while (false)
;
195 QCOMPARE(t.value(VideoMetadataFirst).getVideoMetadata(), VideoMetadataFirst)do { if (!QTest::qCompare(t.value(VideoMetadataFirst).getVideoMetadata
(), VideoMetadataFirst, "t.value(VideoMetadataFirst).getVideoMetadata()"
, "VideoMetadataFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 195)) return;} while (false)
;
194 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 194)) return;} while (false)
;
195 QCOMPARE(t.value(VideoMetadataFirst).getVideoMetadata(), VideoMetadataFirst)do { if (!QTest::qCompare(t.value(VideoMetadataFirst).getVideoMetadata
(), VideoMetadataFirst, "t.value(VideoMetadataFirst).getVideoMetadata()"
, "VideoMetadataFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 195)) return;} while (false)
;
196
197 t = SetHashAddSets(t, DatabaseFields::Set(ItemCommentsFirst));
198 ++itemCount;
199 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 199)) return;} while (false)
;
200 QCOMPARE(t.value(ItemCommentsFirst).getItemComments(), ItemCommentsFirst)do { if (!QTest::qCompare(t.value(ItemCommentsFirst).getItemComments
(), ItemCommentsFirst, "t.value(ItemCommentsFirst).getItemComments()"
, "ItemCommentsFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 200)) return;} while (false)
;
199 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 199)) return;} while (false)
;
200 QCOMPARE(t.value(ItemCommentsFirst).getItemComments(), ItemCommentsFirst)do { if (!QTest::qCompare(t.value(ItemCommentsFirst).getItemComments
(), ItemCommentsFirst, "t.value(ItemCommentsFirst).getItemComments()"
, "ItemCommentsFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 200)) return;} while (false)
;
201
202 t = SetHashAddSets(t, DatabaseFields::Set(ItemPositionsFirst));
203 ++itemCount;
204 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 204)) return;} while (false)
;
205 QCOMPARE(t.value(ItemPositionsFirst).getItemPositions(), ItemPositionsFirst)do { if (!QTest::qCompare(t.value(ItemPositionsFirst).getItemPositions
(), ItemPositionsFirst, "t.value(ItemPositionsFirst).getItemPositions()"
, "ItemPositionsFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 205)) return;} while (false)
;
204 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 204)) return;} while (false)
;
205 QCOMPARE(t.value(ItemPositionsFirst).getItemPositions(), ItemPositionsFirst)do { if (!QTest::qCompare(t.value(ItemPositionsFirst).getItemPositions
(), ItemPositionsFirst, "t.value(ItemPositionsFirst).getItemPositions()"
, "ItemPositionsFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 205)) return;} while (false)
;
206
207 t = SetHashAddSets(t, DatabaseFields::Set(ImageHistoryInfoFirst));
208 ++itemCount;
209 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 209)) return;} while (false)
;
210 QCOMPARE(t.value(ImageHistoryInfoFirst).getImageHistoryInfo(), ImageHistoryInfoFirst)do { if (!QTest::qCompare(t.value(ImageHistoryInfoFirst).getImageHistoryInfo
(), ImageHistoryInfoFirst, "t.value(ImageHistoryInfoFirst).getImageHistoryInfo()"
, "ImageHistoryInfoFirst", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 210)) return;} while (false)
;
209 QCOMPARE(t.size(), itemCount)do { if (!QTest::qCompare(t.size(), itemCount, "t.size()", "itemCount"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 209)) return;} while (false)
;
210 QCOMPARE(t.value(ImageHistoryInfoFirst).getImageHistoryInfo(), ImageHistoryInfoFirst)do { if (!QTest::qCompare(t.value(ImageHistoryInfoFirst).getImageHistoryInfo
(), ImageHistoryInfoFirst, "t.value(ImageHistoryInfoFirst).getImageHistoryInfo()"
, "ImageHistoryInfoFirst", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 210)) return;} while (false)
;
211}
212
213
214void DatabaseFieldsTest::testHashRemoveAll()
215{
216 Set setToAdd =
217 Set(DatabaseFields::Set(ImagesFirst | ImagesLast))
218 .setFields(DatabaseFields::Set(ItemInformationFirst))
219 .setFields(DatabaseFields::Set(ImageMetadataFirst))
220 .setFields(DatabaseFields::Set(VideoMetadataFirst))
221 .setFields(DatabaseFields::Set(ItemCommentsFirst))
222 .setFields(DatabaseFields::Set(ItemPositionsFirst | ItemPositionsLast))
223 .setFields(DatabaseFields::Set(ImageHistoryInfoFirst));
224
225 SetHash t;
226 t = SetHashAddSets(t, setToAdd);
227
228 const int c1 = t.size();
229
230 // test regular remove
231 SetHash t2(t);
232 QCOMPARE(t2.remove(ImagesFirst), 1)do { if (!QTest::qCompare(t2.remove(ImagesFirst), 1, "t2.remove(ImagesFirst)"
, "1", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 232)) return;} while (false)
;
233 QCOMPARE(t2.size(), c1-1)do { if (!QTest::qCompare(t2.size(), c1-1, "t2.size()", "c1-1"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 233)) return;} while (false)
;
232 QCOMPARE(t2.remove(ImagesFirst), 1)do { if (!QTest::qCompare(t2.remove(ImagesFirst), 1, "t2.remove(ImagesFirst)"
, "1", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 232)) return;} while (false)
;
233 QCOMPARE(t2.size(), c1-1)do { if (!QTest::qCompare(t2.size(), c1-1, "t2.size()", "c1-1"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 233)) return;} while (false)
;
234
235 // test removeAllFields: First and Last are in the hash, None is not --> 2 entries should be removed
236 SetHash t3(t);
237 QCOMPARE(t3.removeAllFields(ImagesFirst | ImagesLast | ImagesNone), 2)do { if (!QTest::qCompare(t3.removeAllFields(ImagesFirst | ImagesLast
| ImagesNone), 2, "t3.removeAllFields(ImagesFirst | ImagesLast | ImagesNone)"
, "2", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 237)) return;} while (false)
;
238 QCOMPARE(t3.size(), c1-2)do { if (!QTest::qCompare(t3.size(), c1-2, "t3.size()", "c1-2"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 238)) return;} while (false)
;
237 QCOMPARE(t3.removeAllFields(ImagesFirst | ImagesLast | ImagesNone), 2)do { if (!QTest::qCompare(t3.removeAllFields(ImagesFirst | ImagesLast
| ImagesNone), 2, "t3.removeAllFields(ImagesFirst | ImagesLast | ImagesNone)"
, "2", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 237)) return;} while (false)
;
238 QCOMPARE(t3.size(), c1-2)do { if (!QTest::qCompare(t3.size(), c1-2, "t3.size()", "c1-2"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 238)) return;} while (false)
;
239}
240
241#define DECLARE_MINSIZE_TEST(FieldName){ const FieldMetaInfo<FieldName>::MinSizeType m = FieldNameAll
; const FieldName v = FieldMetaInfo<FieldName>::fromMinSizeType
(m); do { if (!QTest::qCompare(v, FieldNameAll, "v", "FieldNameAll"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 241)) return;} while (false); }
\
241#define DECLARE_MINSIZE_TEST(FieldName){ const FieldMetaInfo<FieldName>::MinSizeType m = FieldNameAll
; const FieldName v = FieldMetaInfo<FieldName>::fromMinSizeType
(m); do { if (!QTest::qCompare(v, FieldNameAll, "v", "FieldNameAll"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 241)) return;} while (false); }
\
242 { \
243 const FieldMetaInfo<FieldName>::MinSizeType m = FieldName##All; \
244 const FieldName v = FieldMetaInfo<FieldName>::fromMinSizeType(m); \
245 QCOMPARE(v, FieldName##All)do { if (!QTest::qCompare(v, FieldName##All, "v", "FieldName##All"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 245)) return;} while (false)
; \
245 QCOMPARE(v, FieldName##All)do { if (!QTest::qCompare(v, FieldName##All, "v", "FieldName##All"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 245)) return;} while (false)
; \
246 }
247
248/**
249 * Verify that the minimum size types still hold all info of the enum.
250 */
251void DatabaseFieldsTest::testMinSizeType()
252{
253 DECLARE_MINSIZE_TEST(Images){ const FieldMetaInfo<Images>::MinSizeType m = ImagesAll
; const Images v = FieldMetaInfo<Images>::fromMinSizeType
(m); do { if (!QTest::qCompare(v, ImagesAll, "v", "ImagesAll"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 253)) return;} while (false); }
254 DECLARE_MINSIZE_TEST(ItemInformation){ const FieldMetaInfo<ItemInformation>::MinSizeType m =
ItemInformationAll; const ItemInformation v = FieldMetaInfo<
ItemInformation>::fromMinSizeType(m); do { if (!QTest::qCompare
(v, ItemInformationAll, "v", "ItemInformationAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 254)) return;} while (false); }
255 DECLARE_MINSIZE_TEST(ImageMetadata){ const FieldMetaInfo<ImageMetadata>::MinSizeType m = ImageMetadataAll
; const ImageMetadata v = FieldMetaInfo<ImageMetadata>::
fromMinSizeType(m); do { if (!QTest::qCompare(v, ImageMetadataAll
, "v", "ImageMetadataAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 255)) return;} while (false); }
256 DECLARE_MINSIZE_TEST(ItemComments){ const FieldMetaInfo<ItemComments>::MinSizeType m = ItemCommentsAll
; const ItemComments v = FieldMetaInfo<ItemComments>::fromMinSizeType
(m); do { if (!QTest::qCompare(v, ItemCommentsAll, "v", "ItemCommentsAll"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 256)) return;} while (false); }
257 DECLARE_MINSIZE_TEST(ItemPositions){ const FieldMetaInfo<ItemPositions>::MinSizeType m = ItemPositionsAll
; const ItemPositions v = FieldMetaInfo<ItemPositions>::
fromMinSizeType(m); do { if (!QTest::qCompare(v, ItemPositionsAll
, "v", "ItemPositionsAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 257)) return;} while (false); }
258 DECLARE_MINSIZE_TEST(ImageHistoryInfo){ const FieldMetaInfo<ImageHistoryInfo>::MinSizeType m =
ImageHistoryInfoAll; const ImageHistoryInfo v = FieldMetaInfo
<ImageHistoryInfo>::fromMinSizeType(m); do { if (!QTest
::qCompare(v, ImageHistoryInfoAll, "v", "ImageHistoryInfoAll"
, "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 258)) return;} while (false); }
259 DECLARE_MINSIZE_TEST(VideoMetadata){ const FieldMetaInfo<VideoMetadata>::MinSizeType m = VideoMetadataAll
; const VideoMetadata v = FieldMetaInfo<VideoMetadata>::
fromMinSizeType(m); do { if (!QTest::qCompare(v, VideoMetadataAll
, "v", "VideoMetadataAll", "/mnt/devel/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 259)) return;} while (false); }
253 DECLARE_MINSIZE_TEST(Images){ const FieldMetaInfo<Images>::MinSizeType m = ImagesAll
; const Images v = FieldMetaInfo<Images>::fromMinSizeType
(m); do { if (!QTest::qCompare(v, ImagesAll, "v", "ImagesAll"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 253)) return;} while (false); }
254 DECLARE_MINSIZE_TEST(ItemInformation){ const FieldMetaInfo<ItemInformation>::MinSizeType m =
ItemInformationAll; const ItemInformation v = FieldMetaInfo<
ItemInformation>::fromMinSizeType(m); do { if (!QTest::qCompare
(v, ItemInformationAll, "v", "ItemInformationAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 254)) return;} while (false); }
255 DECLARE_MINSIZE_TEST(ImageMetadata){ const FieldMetaInfo<ImageMetadata>::MinSizeType m = ImageMetadataAll
; const ImageMetadata v = FieldMetaInfo<ImageMetadata>::
fromMinSizeType(m); do { if (!QTest::qCompare(v, ImageMetadataAll
, "v", "ImageMetadataAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 255)) return;} while (false); }
256 DECLARE_MINSIZE_TEST(ItemComments){ const FieldMetaInfo<ItemComments>::MinSizeType m = ItemCommentsAll
; const ItemComments v = FieldMetaInfo<ItemComments>::fromMinSizeType
(m); do { if (!QTest::qCompare(v, ItemCommentsAll, "v", "ItemCommentsAll"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 256)) return;} while (false); }
257 DECLARE_MINSIZE_TEST(ItemPositions){ const FieldMetaInfo<ItemPositions>::MinSizeType m = ItemPositionsAll
; const ItemPositions v = FieldMetaInfo<ItemPositions>::
fromMinSizeType(m); do { if (!QTest::qCompare(v, ItemPositionsAll
, "v", "ItemPositionsAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 257)) return;} while (false); }
258 DECLARE_MINSIZE_TEST(ImageHistoryInfo){ const FieldMetaInfo<ImageHistoryInfo>::MinSizeType m =
ImageHistoryInfoAll; const ImageHistoryInfo v = FieldMetaInfo
<ImageHistoryInfo>::fromMinSizeType(m); do { if (!QTest
::qCompare(v, ImageHistoryInfoAll, "v", "ImageHistoryInfoAll"
, "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 258)) return;} while (false); }
259 DECLARE_MINSIZE_TEST(VideoMetadata){ const FieldMetaInfo<VideoMetadata>::MinSizeType m = VideoMetadataAll
; const VideoMetadata v = FieldMetaInfo<VideoMetadata>::
fromMinSizeType(m); do { if (!QTest::qCompare(v, VideoMetadataAll
, "v", "VideoMetadataAll", "/home/gilles/Documents/GIT/7.x/core/tests/database/databasefieldstest.cpp"
, 259)) return;} while (false); }
260}

/usr/lib64/qt5/include/QtTest/qtestcase.h

- - - + + + - +
1/****************************************************************************
2**
3** Copyright (C) 2016 The Qt Company Ltd.
4** Contact: https://www.qt.io/licensing/
5**
6** This file is part of the QtTest module of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:LGPL$
9** Commercial License Usage
10** Licensees holding valid commercial Qt licenses may use this file in
11** accordance with the commercial license agreement provided with the
12** Software or, alternatively, in accordance with the terms contained in
13** a written agreement between you and The Qt Company. For licensing terms
14** and conditions see https://www.qt.io/terms-conditions. For further
15** information use the contact form at https://www.qt.io/contact-us.
16**
17** GNU Lesser General Public License Usage
18** Alternatively, this file may be used under the terms of the GNU Lesser
19** General Public License version 3 as published by the Free Software
20** Foundation and appearing in the file LICENSE.LGPL3 included in the
21** packaging of this file. Please review the following information to
22** ensure the GNU Lesser General Public License version 3 requirements
23** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24**
25** GNU General Public License Usage
26** Alternatively, this file may be used under the terms of the GNU
27** General Public License version 2.0 or (at your option) the GNU General
28** Public license version 3 or any later version approved by the KDE Free
29** Qt Foundation. The licenses are as published by the Free Software
30** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31** included in the packaging of this file. Please review the following
32** information to ensure the GNU General Public License requirements will
33** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34** https://www.gnu.org/licenses/gpl-3.0.html.
35**
36** $QT_END_LICENSE$
37**
38****************************************************************************/
39
40#ifndef QTESTCASE_H
41#define QTESTCASE_H
42
43#include <QtTest/qttestglobal.h>
44
45#include <QtCore/qstring.h>
46#include <QtCore/qnamespace.h>
47#include <QtCore/qmetatype.h>
48#include <QtCore/qmetaobject.h>
49#include <QtCore/qsharedpointer.h>
50#include <QtCore/qtemporarydir.h>
51
52#include <string.h>
53
54#ifndef QT_NO_EXCEPTIONS
55# include <exception>
56#endif // QT_NO_EXCEPTIONS
57
58QT_BEGIN_NAMESPACE
59
60class QRegularExpression;
61
62#define QVERIFY(statement)do { if (!QTest::qVerify(static_cast<bool>(statement), "statement"
, "", "/usr/lib64/qt5/include/QtTest/qtestcase.h", 62)) return
;} while (false)
\
63do {\
64 if (!QTest::qVerify(static_cast<bool>(statement), #statement, "", __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__64))\
65 return;\
66} while (false)
67
68#define QFAIL(message)do { QTest::qFail(message, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 68); return;} while (false)
\
69do {\
70 QTest::qFail(message, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__70);\
71 return;\
72} while (false)
73
74#define QVERIFY2(statement, description)do { if (statement) { if (!QTest::qVerify(true, "statement", (
description), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 74
)) return; } else { if (!QTest::qVerify(false, "statement", (
description), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 74
)) return; }} while (false)
\
75do {\
76 if (statement) {\
77 if (!QTest::qVerify(true, #statement, (description), __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__77))\
78 return;\
79 } else {\
80 if (!QTest::qVerify(false, #statement, (description), __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__80))\
81 return;\
82 }\
83} while (false)
84
85#define QCOMPARE(actual, expected)do { if (!QTest::qCompare(actual, expected, "actual", "expected"
, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 85)) return;} while
(false)
\
86do {\
87 if (!QTest::qCompare(actual, expected, #actual, #expected, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__87))\
88 return;\
89} while (false)
90
91
92#ifndef QT_NO_EXCEPTIONS
93
94# define QVERIFY_EXCEPTION_THROWN(expression, exceptiontype)do { try { try { expression; QTest::qFail("Expected exception of type "
"exceptiontype" " to be thrown" " but no exception caught", "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 94); return; } catch (const exceptiontype &) { } } catch
(const std::exception &e) { QByteArray msg = QByteArray(
) + "Expected exception of type " "exceptiontype" " to be thrown but std::exception caught with message: "
+ e.what(); QTest::qFail(msg.constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 94); return; } catch (...) { QTest::qFail("Expected exception of type "
"exceptiontype" " to be thrown" " but unknown exception caught"
, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 94); return; }
} while (false)
\
95 do {\
96 QT_TRYtry {\
97 QT_TRYtry {\
98 expression;\
99 QTest::qFail("Expected exception of type " #exceptiontype " to be thrown" \
100 " but no exception caught", __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__100);\
101 return;\
102 } QT_CATCH (const exceptiontype &)catch (const exceptiontype &) {\
103 }\
104 } QT_CATCH (const std::exception &e)catch (const std::exception &e) {\
105 QByteArray msg = QByteArray() + "Expected exception of type " #exceptiontype \
106 " to be thrown but std::exception caught with message: " + e.what(); \
107 QTest::qFail(msg.constData(), __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__107);\
108 return;\
109 } QT_CATCH (...)catch (...) {\
110 QTest::qFail("Expected exception of type " #exceptiontype " to be thrown" \
111 " but unknown exception caught", __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__111);\
112 return;\
113 }\
114 } while (false)
115
116#else // QT_NO_EXCEPTIONS
117
118/*
119 * The expression passed to the macro should throw an exception and we can't
120 * catch it because Qt has been compiled without exception support. We can't
121 * skip the expression because it may have side effects and must be executed.
122 * So, users must use Qt with exception support enabled if they use exceptions
123 * in their code.
124 */
125# define QVERIFY_EXCEPTION_THROWN(expression, exceptiontype)do { try { try { expression; QTest::qFail("Expected exception of type "
"exceptiontype" " to be thrown" " but no exception caught", "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 125); return; } catch (const exceptiontype &) { } } catch
(const std::exception &e) { QByteArray msg = QByteArray(
) + "Expected exception of type " "exceptiontype" " to be thrown but std::exception caught with message: "
+ e.what(); QTest::qFail(msg.constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 125); return; } catch (...) { QTest::qFail("Expected exception of type "
"exceptiontype" " to be thrown" " but unknown exception caught"
, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 125); return; }
} while (false)
\
126 Q_STATIC_ASSERT_X(false, "Support of exceptions is disabled")static_assert(bool(false), "Support of exceptions is disabled"
)
127
128#endif // !QT_NO_EXCEPTIONS
129
130
131#define QTRY_LOOP_IMPL(expr, timeoutValue, step)if (!(expr)) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i
< timeoutValue && !(expr); qt_test_i += step) { QTest
::qWait(step); }
\
132 if (!(expr)) { \
133 QTest::qWait(0); \
134 } \
135 int qt_test_i = 0; \
136 for (; qt_test_i < timeoutValue && !(expr); qt_test_i += step) { \
137 QTest::qWait(step); \
138 }
139
140#define QTRY_TIMEOUT_DEBUG_IMPL(expr, timeoutValue, step)if (!(expr)) { if (!((expr))) { QTest::qWait(0); } int qt_test_i
= 0; for (; qt_test_i < (2 * timeoutValue) && !((
expr)); qt_test_i += step) { QTest::qWait(step); }; if (expr)
{ QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("expr")).arg(timeoutValue)
.arg(timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate::
asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 140); return;} while (false); } }
\
141 if (!(expr)) { \
142 QTRY_LOOP_IMPL((expr), (2 * timeoutValue), step)if (!((expr))) { QTest::qWait(0); } int qt_test_i = 0; for (;
qt_test_i < (2 * timeoutValue) && !((expr)); qt_test_i
+= step) { QTest::qWait(step); }
;\
143 if (expr) { \
144 QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."); \
145 msg = msg.arg(QString::fromUtf8(#expr)).arg(timeoutValue).arg(timeoutValue + qt_test_i); \
146 QFAIL(qPrintable(msg))do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData
(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 146); return
;} while (false)
; \
147 } \
148 }
149
150// Ideally we'd use qWaitFor instead of QTRY_LOOP_IMPL, but due
151// to a compiler bug on MSVC < 2017 we can't (see QTBUG-59096)
152#define QTRY_IMPL(expr, timeout)const int qt_test_step = timeout < 350 ? timeout / 7 + 1 :
50; const int qt_test_timeoutValue = timeout; { if (!((expr)
)) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i <
qt_test_timeoutValue && !((expr)); qt_test_i += qt_test_step
) { QTest::qWait(qt_test_step); }; } if (!((expr))) { if (!((
(expr)))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i
< (2 * qt_test_timeoutValue) && !(((expr))); qt_test_i
+= qt_test_step) { QTest::qWait(qt_test_step); }; if ((expr)
) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("(expr)")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 152); return;} while (false); } }
\
153 const int qt_test_step = timeout < 350 ? timeout / 7 + 1 : 50; \
154 const int qt_test_timeoutValue = timeout; \
155 { QTRY_LOOP_IMPL((expr), qt_test_timeoutValue, qt_test_step)if (!((expr))) { QTest::qWait(0); } int qt_test_i = 0; for (;
qt_test_i < qt_test_timeoutValue && !((expr)); qt_test_i
+= qt_test_step) { QTest::qWait(qt_test_step); }
; } \
156 QTRY_TIMEOUT_DEBUG_IMPL((expr), qt_test_timeoutValue, qt_test_step)if (!((expr))) { if (!(((expr)))) { QTest::qWait(0); } int qt_test_i
= 0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!(((expr))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if ((expr)) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("(expr)")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 156); return;} while (false); } }
\
157
158// Will try to wait for the expression to become true while allowing event processing
159#define QTRY_VERIFY_WITH_TIMEOUT(expr, timeout)do { const int qt_test_step = timeout < 350 ? timeout / 7 +
1 : 50; const int qt_test_timeoutValue = timeout; { if (!(((
expr)))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i
< qt_test_timeoutValue && !(((expr))); qt_test_i +=
qt_test_step) { QTest::qWait(qt_test_step); }; } if (!(((expr
)))) { if (!((((expr))))) { QTest::qWait(0); } int qt_test_i =
0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!((((expr)))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if (((expr))) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("((expr))")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 159); return;} while (false); } }; do { if (!QTest::qVerify
(static_cast<bool>(expr), "expr", "", "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 159)) return;} while (false); } while (false)
\
160do { \
161 QTRY_IMPL((expr), timeout)const int qt_test_step = timeout < 350 ? timeout / 7 + 1 :
50; const int qt_test_timeoutValue = timeout; { if (!(((expr
)))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i
< qt_test_timeoutValue && !(((expr))); qt_test_i +=
qt_test_step) { QTest::qWait(qt_test_step); }; } if (!(((expr
)))) { if (!((((expr))))) { QTest::qWait(0); } int qt_test_i =
0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!((((expr)))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if (((expr))) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("((expr))")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 161); return;} while (false); } }
;\
162 QVERIFY(expr)do { if (!QTest::qVerify(static_cast<bool>(expr), "expr"
, "", "/usr/lib64/qt5/include/QtTest/qtestcase.h", 162)) return
;} while (false)
; \
163} while (false)
164
165#define QTRY_VERIFY(expr)do { const int qt_test_step = 5000 < 350 ? 5000 / 7 + 1 : 50
; const int qt_test_timeoutValue = 5000; { if (!((((expr)))))
{ QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i <
qt_test_timeoutValue && !((((expr)))); qt_test_i += qt_test_step
) { QTest::qWait(qt_test_step); }; } if (!((((expr))))) { if (
!(((((expr)))))) { QTest::qWait(0); } int qt_test_i = 0; for (
; qt_test_i < (2 * qt_test_timeoutValue) && !(((((
expr))))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if ((((expr)))) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("(((expr)))")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 165); return;} while (false); } }; do { if (!QTest::qVerify
(static_cast<bool>((expr)), "(expr)", "", "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 165)) return;} while (false); } while (false)
QTRY_VERIFY_WITH_TIMEOUT((expr), 5000)do { const int qt_test_step = 5000 < 350 ? 5000 / 7 + 1 : 50
; const int qt_test_timeoutValue = 5000; { if (!((((expr)))))
{ QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i <
qt_test_timeoutValue && !((((expr)))); qt_test_i += qt_test_step
) { QTest::qWait(qt_test_step); }; } if (!((((expr))))) { if (
!(((((expr)))))) { QTest::qWait(0); } int qt_test_i = 0; for (
; qt_test_i < (2 * qt_test_timeoutValue) && !(((((
expr))))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if ((((expr)))) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("(((expr)))")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 165); return;} while (false); } }; do { if (!QTest::qVerify
(static_cast<bool>((expr)), "(expr)", "", "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 165)) return;} while (false); } while (false)
166
167// Will try to wait for the expression to become true while allowing event processing
168#define QTRY_VERIFY2_WITH_TIMEOUT(expr, messageExpression, timeout)do { const int qt_test_step = timeout < 350 ? timeout / 7 +
1 : 50; const int qt_test_timeoutValue = timeout; { if (!(((
expr)))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i
< qt_test_timeoutValue && !(((expr))); qt_test_i +=
qt_test_step) { QTest::qWait(qt_test_step); }; } if (!(((expr
)))) { if (!((((expr))))) { QTest::qWait(0); } int qt_test_i =
0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!((((expr)))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if (((expr))) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("((expr))")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 168); return;} while (false); } }; do { if (expr) { if (!QTest
::qVerify(true, "expr", (messageExpression), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 168)) return; } else { if (!QTest::qVerify(false, "expr", (
messageExpression), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 168)) return; }} while (false); } while (false)
\
169do { \
170 QTRY_IMPL((expr), timeout)const int qt_test_step = timeout < 350 ? timeout / 7 + 1 :
50; const int qt_test_timeoutValue = timeout; { if (!(((expr
)))) { QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i
< qt_test_timeoutValue && !(((expr))); qt_test_i +=
qt_test_step) { QTest::qWait(qt_test_step); }; } if (!(((expr
)))) { if (!((((expr))))) { QTest::qWait(0); } int qt_test_i =
0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!((((expr)))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if (((expr))) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("((expr))")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 170); return;} while (false); } }
;\
171 QVERIFY2(expr, messageExpression)do { if (expr) { if (!QTest::qVerify(true, "expr", (messageExpression
), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 171)) return;
} else { if (!QTest::qVerify(false, "expr", (messageExpression
), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 171)) return;
}} while (false)
; \
172} while (false)
173
174#define QTRY_VERIFY2(expr, messageExpression)do { const int qt_test_step = 5000 < 350 ? 5000 / 7 + 1 : 50
; const int qt_test_timeoutValue = 5000; { if (!((((expr)))))
{ QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i <
qt_test_timeoutValue && !((((expr)))); qt_test_i += qt_test_step
) { QTest::qWait(qt_test_step); }; } if (!((((expr))))) { if (
!(((((expr)))))) { QTest::qWait(0); } int qt_test_i = 0; for (
; qt_test_i < (2 * qt_test_timeoutValue) && !(((((
expr))))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if ((((expr)))) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("(((expr)))")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 174); return;} while (false); } }; do { if ((expr)) { if (!
QTest::qVerify(true, "(expr)", ((messageExpression)), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 174)) return; } else { if (!QTest::qVerify(false, "(expr)",
((messageExpression)), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 174)) return; }} while (false); } while (false)
QTRY_VERIFY2_WITH_TIMEOUT((expr), (messageExpression), 5000)do { const int qt_test_step = 5000 < 350 ? 5000 / 7 + 1 : 50
; const int qt_test_timeoutValue = 5000; { if (!((((expr)))))
{ QTest::qWait(0); } int qt_test_i = 0; for (; qt_test_i <
qt_test_timeoutValue && !((((expr)))); qt_test_i += qt_test_step
) { QTest::qWait(qt_test_step); }; } if (!((((expr))))) { if (
!(((((expr)))))) { QTest::qWait(0); } int qt_test_i = 0; for (
; qt_test_i < (2 * qt_test_timeoutValue) && !(((((
expr))))); qt_test_i += qt_test_step) { QTest::qWait(qt_test_step
); }; if ((((expr)))) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("(((expr)))")).arg(qt_test_timeoutValue
).arg(qt_test_timeoutValue + qt_test_i); do { QTest::qFail(QtPrivate
::asString(msg).toLocal8Bit().constData(), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 174); return;} while (false); } }; do { if ((expr)) { if (!
QTest::qVerify(true, "(expr)", ((messageExpression)), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 174)) return; } else { if (!QTest::qVerify(false, "(expr)",
((messageExpression)), "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 174)) return; }} while (false); } while (false)
175
176// Will try to wait for the comparison to become successful while allowing event processing
177#define QTRY_COMPARE_WITH_TIMEOUT(expr, expected, timeout)do { const int qt_test_step = timeout < 350 ? timeout / 7 +
1 : 50; const int qt_test_timeoutValue = timeout; { if (!(((
(expr) == (expected))))) { QTest::qWait(0); } int qt_test_i =
0; for (; qt_test_i < qt_test_timeoutValue && !((
((expr) == (expected)))); qt_test_i += qt_test_step) { QTest::
qWait(qt_test_step); }; } if (!((((expr) == (expected))))) { if
(!(((((expr) == (expected)))))) { QTest::qWait(0); } int qt_test_i
= 0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!(((((expr) == (expected))))); qt_test_i += qt_test_step) { QTest
::qWait(qt_test_step); }; if ((((expr) == (expected)))) { QString
msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("(((expr) == (expected)))"
)).arg(qt_test_timeoutValue).arg(qt_test_timeoutValue + qt_test_i
); do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData
(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 177); return
;} while (false); } }; do { if (!QTest::qCompare((expr), expected
, "(expr)", "expected", "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 177)) return;} while (false); } while (false)
\
178do { \
179 QTRY_IMPL(((expr) == (expected)), timeout)const int qt_test_step = timeout < 350 ? timeout / 7 + 1 :
50; const int qt_test_timeoutValue = timeout; { if (!((((expr
) == (expected))))) { QTest::qWait(0); } int qt_test_i = 0; for
(; qt_test_i < qt_test_timeoutValue && !((((expr)
== (expected)))); qt_test_i += qt_test_step) { QTest::qWait(
qt_test_step); }; } if (!((((expr) == (expected))))) { if (!(
((((expr) == (expected)))))) { QTest::qWait(0); } int qt_test_i
= 0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!(((((expr) == (expected))))); qt_test_i += qt_test_step) { QTest
::qWait(qt_test_step); }; if ((((expr) == (expected)))) { QString
msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("(((expr) == (expected)))"
)).arg(qt_test_timeoutValue).arg(qt_test_timeoutValue + qt_test_i
); do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData
(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 179); return
;} while (false); } }
;\
180 QCOMPARE((expr), expected)do { if (!QTest::qCompare((expr), expected, "(expr)", "expected"
, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 180)) return;}
while (false)
; \
181} while (false)
182
183#define QTRY_COMPARE(expr, expected)do { const int qt_test_step = 5000 < 350 ? 5000 / 7 + 1 : 50
; const int qt_test_timeoutValue = 5000; { if (!(((((expr)) ==
(expected))))) { QTest::qWait(0); } int qt_test_i = 0; for (
; qt_test_i < qt_test_timeoutValue && !(((((expr))
== (expected)))); qt_test_i += qt_test_step) { QTest::qWait(
qt_test_step); }; } if (!(((((expr)) == (expected))))) { if (
!((((((expr)) == (expected)))))) { QTest::qWait(0); } int qt_test_i
= 0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!((((((expr)) == (expected))))); qt_test_i += qt_test_step) {
QTest::qWait(qt_test_step); }; if (((((expr)) == (expected))
)) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("((((expr)) == (expected)))"
)).arg(qt_test_timeoutValue).arg(qt_test_timeoutValue + qt_test_i
); do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData
(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 183); return
;} while (false); } }; do { if (!QTest::qCompare(((expr)), expected
, "((expr))", "expected", "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 183)) return;} while (false); } while (false)
QTRY_COMPARE_WITH_TIMEOUT((expr), expected, 5000)do { const int qt_test_step = 5000 < 350 ? 5000 / 7 + 1 : 50
; const int qt_test_timeoutValue = 5000; { if (!(((((expr)) ==
(expected))))) { QTest::qWait(0); } int qt_test_i = 0; for (
; qt_test_i < qt_test_timeoutValue && !(((((expr))
== (expected)))); qt_test_i += qt_test_step) { QTest::qWait(
qt_test_step); }; } if (!(((((expr)) == (expected))))) { if (
!((((((expr)) == (expected)))))) { QTest::qWait(0); } int qt_test_i
= 0; for (; qt_test_i < (2 * qt_test_timeoutValue) &&
!((((((expr)) == (expected))))); qt_test_i += qt_test_step) {
QTest::qWait(qt_test_step); }; if (((((expr)) == (expected))
)) { QString msg = QString::fromUtf8("QTestLib: This test case check (\"%1\") failed because the requested timeout (%2 ms) was too short, %3 ms would have been sufficient this time."
); msg = msg.arg(QString::fromUtf8("((((expr)) == (expected)))"
)).arg(qt_test_timeoutValue).arg(qt_test_timeoutValue + qt_test_i
); do { QTest::qFail(QtPrivate::asString(msg).toLocal8Bit().constData
(), "/usr/lib64/qt5/include/QtTest/qtestcase.h", 183); return
;} while (false); } }; do { if (!QTest::qCompare(((expr)), expected
, "((expr))", "expected", "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 183)) return;} while (false); } while (false)
184
185#define QSKIP_INTERNAL(statement)do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 185); return;} while (false)
\
186do {\
187 QTest::qSkip(statement, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__187);\
188 return;\
189} while (false)
190
191#ifdef Q_COMPILER_VARIADIC_MACROS
192
193#define QSKIP(statement, ...)do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 193); return;} while (false)
QSKIP_INTERNAL(statement)do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 193); return;} while (false)
194
195#else
196
197#define QSKIP(statement)do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 197); return;} while (false)
QSKIP_INTERNAL(statement)do { QTest::qSkip(statement, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 197); return;} while (false)
198
199#endif
200
201#define QEXPECT_FAIL(dataIndex, comment, mode)do { if (!QTest::qExpectFail(dataIndex, comment, QTest::mode,
"/usr/lib64/qt5/include/QtTest/qtestcase.h", 201)) return;} while
(false)
\
202do {\
203 if (!QTest::qExpectFail(dataIndex, comment, QTest::mode, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__203))\
204 return;\
205} while (false)
206
207#define QFETCH(Type, name)Type name = *static_cast<Type *>(QTest::qData("name", ::
qMetaTypeId<typename std::remove_cv<Type >::type>
()))
\
208 Type name = *static_cast<Type *>(QTest::qData(#name, ::qMetaTypeId<typename std::remove_cv<Type >::type>()))
209
210#define QFETCH_GLOBAL(Type, name)Type name = *static_cast<Type *>(QTest::qGlobalData("name"
, ::qMetaTypeId<typename std::remove_cv<Type >::type
>()))
\
211 Type name = *static_cast<Type *>(QTest::qGlobalData(#name, ::qMetaTypeId<typename std::remove_cv<Type >::type>()))
212
213#define QTEST(actual, testElement)do { if (!QTest::qTest(actual, testElement, "actual", "testElement"
, "/usr/lib64/qt5/include/QtTest/qtestcase.h", 213)) return;}
while (false)
\
214do {\
215 if (!QTest::qTest(actual, testElement, #actual, #testElement, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__215))\
216 return;\
217} while (false)
218
219#define QWARN(msg)QTest::qWarn(msg, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 219)
\
220 QTest::qWarn(msg, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__220)
221
222#ifdef QT_TESTCASE_BUILDDIR"/mnt/devel/GIT/7.x/build.scan"
223# define QFINDTESTDATA(basepath)QTest::qFindTestData(basepath, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 223, "/mnt/devel/GIT/7.x/build.scan")
\
224 QTest::qFindTestData(basepath, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__224, QT_TESTCASE_BUILDDIR"/mnt/devel/GIT/7.x/build.scan")
222#ifdef QT_TESTCASE_BUILDDIR"/home/gilles/Documents/GIT/7.x/build.scan"
223# define QFINDTESTDATA(basepath)QTest::qFindTestData(basepath, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 223, "/home/gilles/Documents/GIT/7.x/build.scan")
\
224 QTest::qFindTestData(basepath, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__224, QT_TESTCASE_BUILDDIR"/home/gilles/Documents/GIT/7.x/build.scan")
225#else
226# define QFINDTESTDATA(basepath)QTest::qFindTestData(basepath, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 226, "/mnt/devel/GIT/7.x/build.scan")
\
226# define QFINDTESTDATA(basepath)QTest::qFindTestData(basepath, "/usr/lib64/qt5/include/QtTest/qtestcase.h"
, 226, "/home/gilles/Documents/GIT/7.x/build.scan")
\
227 QTest::qFindTestData(basepath, __FILE__"/usr/lib64/qt5/include/QtTest/qtestcase.h", __LINE__227)
228#endif
229
230# define QEXTRACTTESTDATA(resourcePath)QTest::qExtractTestData(resourcePath) \
231 QTest::qExtractTestData(resourcePath)
232
233class QObject;
234class QTestData;
235
236#define QTEST_COMPARE_DECL(KLASS)\
237 template<> Q_TESTLIB_EXPORT__attribute__((visibility("default"))) char *toString<KLASS >(const KLASS &);
238
239namespace QTest
240{
241 namespace Internal {
242
243 template<typename T> // Output registered enums
244 inline typename std::enable_if<QtPrivate::IsQEnumHelper<T>::Value, char*>::type toString(T e)
245 {
246 QMetaEnum me = QMetaEnum::fromType<T>();
247 return qstrdup(me.valueToKey(int(e))); // int cast is necessary to support enum classes
248 }
249
250 template <typename T> // Fallback
251 inline typename std::enable_if<!QtPrivate::IsQEnumHelper<T>::Value, char*>::type toString(const T &)
252 {
253 return nullptr;
254 }
255
256 template<typename F> // Output QFlags of registered enumerations
257 inline typename std::enable_if<QtPrivate::IsQEnumHelper<F>::Value, char*>::type toString(QFlags<F> f)
258 {
259 const QMetaEnum me = QMetaEnum::fromType<F>();
260 return qstrdup(me.valueToKeys(int(f)).constData());
261 }
262
263 template <typename F> // Fallback: Output hex value
264 inline typename std::enable_if<!QtPrivate::IsQEnumHelper<F>::Value, char*>::type toString(QFlags<F> f)
265 {
266 const size_t space = 3 + 2 * sizeof(unsigned); // 2 for 0x, two hex digits per byte, 1 for '\0'
267 char *msg = new char[space];
6
Memory is allocated
268 qsnprintf(msg, space, "0x%x", unsigned(f));
269 return msg;
270 }
271
272 } // namespace Internal
273
274 template<typename T>
275 inline char *toString(const T &t)
276 {
277 return Internal::toString(t);
5
Calling 'toString<Digikam::DatabaseFields::ImagesField>'
7
Returned allocated memory
278 }
279
280 template <typename T1, typename T2>
281 inline char *toString(const QPair<T1, T2> &pair);
282
283 template <typename T1, typename T2>
284 inline char *toString(const std::pair<T1, T2> &pair);
285
286 template <class... Types>
287 inline char *toString(const std::tuple<Types...> &tuple);
288
289 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) char *toHexRepresentation(const char *ba, int length);
290 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) char *toPrettyCString(const char *unicode, int length);
291 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) char *toPrettyUnicode(QStringView string);
292 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) char *toString(const char *);
293 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) char *toString(const void *);
294
295 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void qInit(QObject *testObject, int argc = 0, char **argv = nullptr);
296 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) int qRun();
297 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void qCleanup();
298
299 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) int qExec(QObject *testObject, int argc = 0, char **argv = nullptr);
300 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) int qExec(QObject *testObject, const QStringList &arguments);
301
302 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void setMainSourcePath(const char *file, const char *builddir = nullptr);
303
304 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) bool qVerify(bool statement, const char *statementStr, const char *description,
305 const char *file, int line);
306 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void qFail(const char *statementStr, const char *file, int line);
307 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void qSkip(const char *message, const char *file, int line);
308 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) bool qExpectFail(const char *dataIndex, const char *comment, TestFailMode mode,
309 const char *file, int line);
310 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void qWarn(const char *message, const char *file = nullptr, int line = 0);
311 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void ignoreMessage(QtMsgType type, const char *message);
312#if QT_CONFIG(regularexpression)(1/1 == 1)
313 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void ignoreMessage(QtMsgType type, const QRegularExpression &messagePattern);
314#endif
315
316#if QT_CONFIG(temporaryfile)(1/1 == 1)
317 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) QSharedPointer<QTemporaryDir> qExtractTestData(const QString &dirName);
318#endif
319 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) QString qFindTestData(const char* basepath, const char* file = nullptr, int line = 0, const char* builddir = nullptr);
320 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) QString qFindTestData(const QString& basepath, const char* file = nullptr, int line = 0, const char* builddir = nullptr);
321
322 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void *qData(const char *tagName, int typeId);
323 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void *qGlobalData(const char *tagName, int typeId);
324 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void *qElementData(const char *elementName, int metaTypeId);
325 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) QObject *testObject();
326
327 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) const char *currentAppName();
328
329 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) const char *currentTestFunction();
330 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) const char *currentDataTag();
331 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) bool currentTestFailed();
332
333 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) Qt::Key asciiToKey(char ascii);
334 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) char keyToAscii(Qt::Key key);
335
336 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) bool compare_helper(bool success, const char *failureMsg,
337 char *val1, char *val2,
338 const char *actual, const char *expected,
339 const char *file, int line);
340 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void qSleep(int ms);
341 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) void addColumnInternal(int id, const char *name);
342
343 template <typename T>
344 inline void addColumn(const char *name, T * = nullptr)
345 {
346 typedef std::is_same<T, const char*> QIsSameTConstChar;
347 Q_STATIC_ASSERT_X(!QIsSameTConstChar::value, "const char* is not allowed as a test data format.")static_assert(bool(!QIsSameTConstChar::value), "const char* is not allowed as a test data format."
)
;
348 addColumnInternal(qMetaTypeId<T>(), name);
349 }
350 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) QTestData &newRow(const char *dataTag);
351 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) QTestData &addRow(const char *format, ...) Q_ATTRIBUTE_FORMAT_PRINTF(1, 2)__attribute__((format(printf, (1), (2))));
352
353#if QT_VERSION((5<<16)|(12<<8)|(6)) < QT_VERSION_CHECK(6, 0, 0)((6<<16)|(0<<8)|(0))
354 // kept after adding implementation of <T1, T2> out of paranoia:
355 template <typename T>
356 inline bool qCompare(T const &t1, T const &t2, const char *actual, const char *expected,
357 const char *file, int line)
358 {
359 return compare_helper(t1 == t2, "Compared values are not the same",
9
Potential memory leak
360 toString(t1), toString(t2), actual, expected, file, line);
4
Calling 'toString<QFlags<Digikam::DatabaseFields::ImagesField>>'
8
Returned allocated memory
361 }
362#endif
363
364 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) bool qCompare(float const &t1, float const &t2,
365 const char *actual, const char *expected, const char *file, int line);
366
367 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) bool qCompare(double const &t1, double const &t2,
368 const char *actual, const char *expected, const char *file, int line);
369
370 inline bool compare_ptr_helper(const volatile void *t1, const volatile void *t2, const char *actual,
371 const char *expected, const char *file, int line)
372 {
373 return compare_helper(t1 == t2, "Compared pointers are not the same",
374 toString(t1), toString(t2), actual, expected, file, line);
375 }
376
377 inline bool compare_ptr_helper(const volatile void *t1, std::nullptr_t, const char *actual,
378 const char *expected, const char *file, int line)
379 {
380 return compare_helper(t1 == nullptr, "Compared pointers are not the same",
381 toString(t1), toString(nullptr), actual, expected, file, line);
382 }
383
384 inline bool compare_ptr_helper(std::nullptr_t, const volatile void *t2, const char *actual,
385 const char *expected, const char *file, int line)
386 {
387 return compare_helper(nullptr == t2, "Compared pointers are not the same",
388 toString(nullptr), toString(t2), actual, expected, file, line);
389 }
390
391 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) bool compare_string_helper(const char *t1, const char *t2, const char *actual,
392 const char *expected, const char *file, int line);
393
394 Q_TESTLIB_EXPORT__attribute__((visibility("default"))) char *formatString(const char *prefix, const char *suffix, size_t numArguments, ...);
395
396#ifndef Q_QDOC
397 QTEST_COMPARE_DECL(short)
398 QTEST_COMPARE_DECL(ushort)
399 QTEST_COMPARE_DECL(int)
400 QTEST_COMPARE_DECL(uint)
401 QTEST_COMPARE_DECL(long)
402 QTEST_COMPARE_DECL(ulong)
403 QTEST_COMPARE_DECL(qint64)
404 QTEST_COMPARE_DECL(quint64)
405
406 QTEST_COMPARE_DECL(float)
407 QTEST_COMPARE_DECL(double)
408 QTEST_COMPARE_DECL(char)
409 QTEST_COMPARE_DECL(signed char)
410 QTEST_COMPARE_DECL(unsigned char)
411 QTEST_COMPARE_DECL(bool)
412#endif
413
414 template <typename T1, typename T2>
415 inline bool qCompare(const T1 &t1, const T2 &t2, const char *actual, const char *expected,
416 const char *file, int line)
417 {
418 return compare_helper(t1 == t2, "Compared values are not the same",
419 toString(t1), toString(t2), actual, expected, file, line);
420 }
421
422 inline bool qCompare(double const &t1, float const &t2, const char *actual,
423 const char *expected, const char *file, int line)
424 {
425 return qCompare(qreal(t1), qreal(t2), actual, expected, file, line);
426 }
427
428 inline bool qCompare(float const &t1, double const &t2, const char *actual,
429 const char *expected, const char *file, int line)
430 {
431 return qCompare(qreal(t1), qreal(t2), actual, expected, file, line);
432 }
433
434 template <typename T>
435 inline bool qCompare(const T *t1, const T *t2, const char *actual, const char *expected,
436 const char *file, int line)
437 {
438 return compare_ptr_helper(t1, t2, actual, expected, file, line);
439 }
440 template <typename T>
441 inline bool qCompare(T *t1, T *t2, const char *actual, const char *expected,
442 const char *file, int line)
443 {
444 return compare_ptr_helper(t1, t2, actual, expected, file, line);
445 }
446
447 template <typename T>
448 inline bool qCompare(T *t1, std::nullptr_t, const char *actual, const char *expected,
449 const char *file, int line)
450 {
451 return compare_ptr_helper(t1, nullptr, actual, expected, file, line);
452 }
453 template <typename T>
454 inline bool qCompare(std::nullptr_t, T *t2, const char *actual, const char *expected,
455 const char *file, int line)
456 {
457 return compare_ptr_helper(nullptr, t2, actual, expected, file, line);
458 }
459
460 template <typename T1, typename T2>
461 inline bool qCompare(const T1 *t1, const T2 *t2, const char *actual, const char *expected,
462 const char *file, int line)
463 {
464 return compare_ptr_helper(t1, static_cast<const T1 *>(t2), actual, expected, file, line);
465 }
466 template <typename T1, typename T2>
467 inline bool qCompare(T1 *t1, T2 *t2, const char *actual, const char *expected,
468 const char *file, int line)
469 {
470 return compare_ptr_helper(const_cast<const T1 *>(t1),
471 static_cast<const T1 *>(const_cast<const T2 *>(t2)), actual, expected, file, line);
472 }
473 inline bool qCompare(const char *t1, const char *t2, const char *actual,
474 const char *expected, const char *file, int line)
475 {
476 return compare_string_helper(t1, t2, actual, expected, file, line);
477 }
478 inline bool qCompare(char *t1, char *t2, const char *actual, const char *expected,
479 const char *file, int line)
480 {
481 return compare_string_helper(t1, t2, actual, expected, file, line);
482 }
483
484 /* The next two overloads are for MSVC that shows problems with implicit
485 conversions
486 */
487 inline bool qCompare(char *t1, const char *t2, const char *actual,
488 const char *expected, const char *file, int line)
489 {
490 return compare_string_helper(t1, t2, actual, expected, file, line);
491 }
492 inline bool qCompare(const char *t1, char *t2, const char *actual,
493 const char *expected, const char *file, int line)
494 {
495 return compare_string_helper(t1, t2, actual, expected, file, line);
496 }
497
498 template <class T>
499 inline bool qTest(const T& actual, const char *elementName, const char *actualStr,
500 const char *expected, const char *file, int line)
501 {
502 return qCompare(actual, *static_cast<const T *>(QTest::qElementData(elementName,
503 qMetaTypeId<T>())), actualStr, expected, file, line);
504 }
505}
506
507#undef QTEST_COMPARE_DECL
508
509QT_END_NAMESPACE
510
511#endif
diff --git a/static/reports/clang/master/report-e3d639.html b/static/reports/clang/master/report-d26679.html similarity index 74% rename from static/reports/clang/master/report-e3d639.html rename to static/reports/clang/master/report-d26679.html index 4d587fab5..300a2c98c 100644 --- a/static/reports/clang/master/report-e3d639.html +++ b/static/reports/clang/master/report-d26679.html @@ -1,895 +1,895 @@ /usr/lib64/qt5/include/QtCore/qscopedpointer.h

Bug Summary

File:usr/lib64/qt5/include/QtCore/qscopedpointer.h
Warning:line 60, column 9
Memory allocated by 'new[]' should be deallocated by 'delete[]', not 'delete'

Annotated Source Code

Press '?' to see keyboard shortcuts

-
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name oilpaintfilter.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_USE_QSTRINGBUILDER -D TRANSLATION_DOMAIN="digikam" -D UNIX_ENV=1 -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -D digikamcore_EXPORTS -D qDNGLittleEndian -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/7.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/7.x/core/libs/dimg -I /mnt/devel/GIT/7.x/build.scan/core/libs/dimg/core_dimg_obj_autogen/include -I /mnt/devel/GIT/7.x/core/app/date -I /mnt/devel/GIT/7.x/core/app/dragdrop -I /mnt/devel/GIT/7.x/core/app/filters -I /mnt/devel/GIT/7.x/core/app/items/delegate -I /mnt/devel/GIT/7.x/core/app/items/overlays -I /mnt/devel/GIT/7.x/core/app/items/thumbbar -I /mnt/devel/GIT/7.x/core/app/items/utils -I /mnt/devel/GIT/7.x/core/app/items/views -I /mnt/devel/GIT/7.x/core/app/main -I /mnt/devel/GIT/7.x/core/app/utils -I /mnt/devel/GIT/7.x/core/app/views/preview -I /mnt/devel/GIT/7.x/core/app/views/sidebar -I /mnt/devel/GIT/7.x/core/app/views/stack -I /mnt/devel/GIT/7.x/core/app/views/tableview -I /mnt/devel/GIT/7.x/core/app/views/utils -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/7.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/7.x/core/dplugins/dimg/png -I /mnt/devel/GIT/7.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/7.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/7.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/7.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/7.x/core/libs/album/engine -I /mnt/devel/GIT/7.x/core/libs/album/manager -I /mnt/devel/GIT/7.x/core/libs/album/treeview -I /mnt/devel/GIT/7.x/core/libs/album/widgets -I /mnt/devel/GIT/7.x/core/libs/database/collection -I /mnt/devel/GIT/7.x/core/libs/database/coredb -I /mnt/devel/GIT/7.x/core/libs/database/dbjobs -I /mnt/devel/GIT/7.x/core/libs/database/engine -I /mnt/devel/GIT/7.x/core/libs/database/haar -I /mnt/devel/GIT/7.x/core/libs/database/history -I /mnt/devel/GIT/7.x/core/libs/database/item/containers -I /mnt/devel/GIT/7.x/core/libs/database/item/lister -I /mnt/devel/GIT/7.x/core/libs/database/item/query -I /mnt/devel/GIT/7.x/core/libs/database/item/scanner -I /mnt/devel/GIT/7.x/core/libs/database/models -I /mnt/devel/GIT/7.x/core/libs/database/server -I /mnt/devel/GIT/7.x/core/libs/database/similaritydb -I /mnt/devel/GIT/7.x/core/libs/database/tags -I /mnt/devel/GIT/7.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/7.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/7.x/core/libs/database/utils/scan -I /mnt/devel/GIT/7.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/7.x/core/libs/dialogs -I /mnt/devel/GIT/7.x/core/libs/dimg/color -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/7.x/core/libs/dimg/filters -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/raw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/7.x/core/libs/dimg/history -I /mnt/devel/GIT/7.x/core/libs/dimg/loaders -I /mnt/devel/GIT/7.x/core/libs/dngwriter -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/7.x/core/libs/dplugins/core -I /mnt/devel/GIT/7.x/core/libs/dplugins/iface -I /mnt/devel/GIT/7.x/core/libs/dplugins/setup -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/7.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/7.x/core/libs/dragdrop -I /mnt/devel/GIT/7.x/core/libs/dtrash -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/7.x/core/libs/facesengine/common -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition -I /mnt/devel/GIT/7.x/core/libs/fileactionmanager -I /mnt/devel/GIT/7.x/core/libs/filters -I /mnt/devel/GIT/7.x/core/libs/iojobs -I /mnt/devel/GIT/7.x/core/libs/jpegutils -I /mnt/devel/GIT/7.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/7.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/7.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/7.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/7.x/core/libs/models -I /mnt/devel/GIT/7.x/core/libs/notificationmanager -I /mnt/devel/GIT/7.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/7.x/core/libs/pgfutils -I /mnt/devel/GIT/7.x/core/libs/progressmanager -I /mnt/devel/GIT/7.x/core/libs/properties/captions -I /mnt/devel/GIT/7.x/core/libs/properties/geolocation -I /mnt/devel/GIT/7.x/core/libs/properties/history -I /mnt/devel/GIT/7.x/core/libs/properties/import -I /mnt/devel/GIT/7.x/core/libs/properties -I /mnt/devel/GIT/7.x/core/libs/rawengine -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/7.x/core/libs/settings -I /mnt/devel/GIT/7.x/core/libs/tags/engine -I /mnt/devel/GIT/7.x/core/libs/tags/manager/models -I /mnt/devel/GIT/7.x/core/libs/tags/manager -I /mnt/devel/GIT/7.x/core/libs/tags/widgets -I /mnt/devel/GIT/7.x/core/libs/template -I /mnt/devel/GIT/7.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/7.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/7.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/7.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/7.x/core/libs/threadimageio/video -I /mnt/devel/GIT/7.x/core/libs/threads -I /mnt/devel/GIT/7.x/core/libs/timeadjust -I /mnt/devel/GIT/7.x/core/libs/transitionmngr -I /mnt/devel/GIT/7.x/core/libs/versionmanager -I /mnt/devel/GIT/7.x/core/libs/video/manager -I /mnt/devel/GIT/7.x/core/libs/video/player -I /mnt/devel/GIT/7.x/core/libs/widgets/colors -I /mnt/devel/GIT/7.x/core/libs/widgets/combo -I /mnt/devel/GIT/7.x/core/libs/widgets/files -I /mnt/devel/GIT/7.x/core/libs/widgets/fonts -I /mnt/devel/GIT/7.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/7.x/core/libs/widgets/history -I /mnt/devel/GIT/7.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/7.x/core/libs/widgets/itemview -I /mnt/devel/GIT/7.x/core/libs/widgets/layout -I /mnt/devel/GIT/7.x/core/libs/widgets/mainview -I /mnt/devel/GIT/7.x/core/libs/widgets/metadata -I /mnt/devel/GIT/7.x/core/libs/widgets/range -I /mnt/devel/GIT/7.x/core/libs/widgets/text -I /mnt/devel/GIT/7.x/core/showfoto/main -I /mnt/devel/GIT/7.x/core/showfoto/setup -I /mnt/devel/GIT/7.x/core/showfoto/thumbbar -I /mnt/devel/GIT/7.x/core/tests/advancedrename -I /mnt/devel/GIT/7.x/core/tests/albummodel -I /mnt/devel/GIT/7.x/core/tests/database -I /mnt/devel/GIT/7.x/core/tests/dimg -I /mnt/devel/GIT/7.x/core/tests/facesengine/demo -I /mnt/devel/GIT/7.x/core/tests/facesengine -I /mnt/devel/GIT/7.x/core/tests/fileio -I /mnt/devel/GIT/7.x/core/tests/geolocation/editor -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/7.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/7.x/core/tests/imgqsort -I /mnt/devel/GIT/7.x/core/tests/iojobs -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/editsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/fakeserver -I /mnt/devel/GIT/7.x/core/tests/metadataengine -I /mnt/devel/GIT/7.x/core/tests/modeltest -I /mnt/devel/GIT/7.x/core/tests/multithreading -I /mnt/devel/GIT/7.x/core/tests/timestampupdate -I /mnt/devel/GIT/7.x/core/tests/vkontakte -I /mnt/devel/GIT/7.x/core/tests/widgets -I /mnt/devel/GIT/7.x/core/utilities/advancedrename -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/bench -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/database -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/items -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/threads -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/widgets -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/workers -I /mnt/devel/GIT/7.x/core/utilities/firstrun -I /mnt/devel/GIT/7.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/7.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/7.x/core/utilities/import/backend -I /mnt/devel/GIT/7.x/core/utilities/import/dialogs -I /mnt/devel/GIT/7.x/core/utilities/import/items -I /mnt/devel/GIT/7.x/core/utilities/import/main -I /mnt/devel/GIT/7.x/core/utilities/import/models -I /mnt/devel/GIT/7.x/core/utilities/import/views -I /mnt/devel/GIT/7.x/core/utilities/import/widgets -I /mnt/devel/GIT/7.x/core/utilities/lighttable -I /mnt/devel/GIT/7.x/core/utilities/maintenance -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/7.x/core/utilities/searchwindow -I /mnt/devel/GIT/7.x/core/utilities/setup/album -I /mnt/devel/GIT/7.x/core/utilities/setup/camera -I /mnt/devel/GIT/7.x/core/utilities/setup/collections -I /mnt/devel/GIT/7.x/core/utilities/setup/editor -I /mnt/devel/GIT/7.x/core/utilities/setup/metadata -I /mnt/devel/GIT/7.x/core/utilities/setup -I /mnt/devel/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/7.x/build.scan/core/app/utils -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -I /usr/include/lqr-1 -I /usr/include/glib-2.0 -I /usr/lib64/glib-2.0/include -I /usr/lib64/qt5/include -I /usr/lib64/qt5/include/QtConcurrent -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtXml -I /usr/include/KF5/KConfigCore -I /usr/include/KF5 -I /usr/include/KF5/KI18n -I /usr/include/KF5/KWidgetsAddons -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtX11Extras -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/7.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/7.x/project/reports/report.scan/2020-05-22-222329-1869-1 -x c++ /mnt/devel/GIT/7.x/core/libs/dimg/filters/fx/oilpaintfilter.cpp -faddrsig +
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name oilpaintfilter.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_USE_QSTRINGBUILDER -D TRANSLATION_DOMAIN="digikam" -D UNIX_ENV=1 -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -D digikamcore_EXPORTS -D qDNGLittleEndian -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget -D qMacOS=0 -D qWinOS=0 -I /home/gilles/Documents/GIT/7.x/build.scan/core/libs/dimg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg -I /home/gilles/Documents/GIT/7.x/build.scan/core/libs/dimg/core_dimg_obj_autogen/include -I /home/gilles/Documents/GIT/7.x/core/app/date -I /home/gilles/Documents/GIT/7.x/core/app/dragdrop -I /home/gilles/Documents/GIT/7.x/core/app/filters -I /home/gilles/Documents/GIT/7.x/core/app/items/delegate -I /home/gilles/Documents/GIT/7.x/core/app/items/overlays -I /home/gilles/Documents/GIT/7.x/core/app/items/thumbbar -I /home/gilles/Documents/GIT/7.x/core/app/items/utils -I /home/gilles/Documents/GIT/7.x/core/app/items/views -I /home/gilles/Documents/GIT/7.x/core/app/main -I /home/gilles/Documents/GIT/7.x/core/app/utils -I /home/gilles/Documents/GIT/7.x/core/app/views/preview -I /home/gilles/Documents/GIT/7.x/core/app/views/sidebar -I /home/gilles/Documents/GIT/7.x/core/app/views/stack -I /home/gilles/Documents/GIT/7.x/core/app/views/tableview -I /home/gilles/Documents/GIT/7.x/core/app/views/utils -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/invert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/custom/userscript -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/decorate/border -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/blur -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/crop -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/flip -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/resize -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/rotate -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libheif -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/imagemagick -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/jpeg -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/pgf -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/png -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/qimage -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/raw -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/tiff -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/bcg -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/film -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/hsl -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/invert -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/border -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/texture -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/blur -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/redeye -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/restoration -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/file/print -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/blurfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/charcoal -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/colorfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/emboss -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/raindrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/autocrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/freerotation -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/perspective -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/resize -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/shear -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/import/dscanner -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/glviewer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/common -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/box -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/facebook -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/flickr -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/imgur -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/rajce -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/twitter -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend/attic -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend/deprecated -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/darktable -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/native -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/ufraw -I /home/gilles/Documents/GIT/7.x/core/libs/album/engine -I /home/gilles/Documents/GIT/7.x/core/libs/album/manager -I /home/gilles/Documents/GIT/7.x/core/libs/album/treeview -I /home/gilles/Documents/GIT/7.x/core/libs/album/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/database/collection -I /home/gilles/Documents/GIT/7.x/core/libs/database/coredb -I /home/gilles/Documents/GIT/7.x/core/libs/database/dbjobs -I /home/gilles/Documents/GIT/7.x/core/libs/database/engine -I /home/gilles/Documents/GIT/7.x/core/libs/database/haar -I /home/gilles/Documents/GIT/7.x/core/libs/database/history -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/containers -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/lister -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/query -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/scanner -I /home/gilles/Documents/GIT/7.x/core/libs/database/models -I /home/gilles/Documents/GIT/7.x/core/libs/database/server -I /home/gilles/Documents/GIT/7.x/core/libs/database/similaritydb -I /home/gilles/Documents/GIT/7.x/core/libs/database/tags -I /home/gilles/Documents/GIT/7.x/core/libs/database/thumbsdb -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/ifaces -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/scan -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/dialogs -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/color -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/auto -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/bcg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/bw -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/cb -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/curves -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/decorate -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/film -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/fx -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/greycstoration -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/hsl -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/icc -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/imgqsort -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/lc -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/lens -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/levels -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/nr -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/raw -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/redeye -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/sharp -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/transform -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/wb -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/history -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/loaders -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/md5 -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/core -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/iface -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/setup -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/msgraphdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/msgraphexternalinterceptordemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/vimeodemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/youtubedemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/dragdrop -I /home/gilles/Documents/GIT/7.x/core/libs/dtrash -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/alignment/congealing -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/common -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/facedb -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition -I /home/gilles/Documents/GIT/7.x/core/libs/fileactionmanager -I /home/gilles/Documents/GIT/7.x/core/libs/filters -I /home/gilles/Documents/GIT/7.x/core/libs/iojobs -I /home/gilles/Documents/GIT/7.x/core/libs/jpegutils -I /home/gilles/Documents/GIT/7.x/core/libs/kmemoryinfo -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/containers -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/dmetadata -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/engine -I /home/gilles/Documents/GIT/7.x/core/libs/models -I /home/gilles/Documents/GIT/7.x/core/libs/notificationmanager -I /home/gilles/Documents/GIT/7.x/core/libs/pgfutils/libpgf -I /home/gilles/Documents/GIT/7.x/core/libs/pgfutils -I /home/gilles/Documents/GIT/7.x/core/libs/progressmanager -I /home/gilles/Documents/GIT/7.x/core/libs/properties/captions -I /home/gilles/Documents/GIT/7.x/core/libs/properties/geolocation -I /home/gilles/Documents/GIT/7.x/core/libs/properties/history -I /home/gilles/Documents/GIT/7.x/core/libs/properties/import -I /home/gilles/Documents/GIT/7.x/core/libs/properties -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine/libraw/internal -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine/libraw/libraw -I /home/gilles/Documents/GIT/7.x/core/libs/settings -I /home/gilles/Documents/GIT/7.x/core/libs/tags/engine -I /home/gilles/Documents/GIT/7.x/core/libs/tags/manager/models -I /home/gilles/Documents/GIT/7.x/core/libs/tags/manager -I /home/gilles/Documents/GIT/7.x/core/libs/tags/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/template -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/engine -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/fileio -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/preview -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/thumb -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/video -I /home/gilles/Documents/GIT/7.x/core/libs/threads -I /home/gilles/Documents/GIT/7.x/core/libs/timeadjust -I /home/gilles/Documents/GIT/7.x/core/libs/transitionmngr -I /home/gilles/Documents/GIT/7.x/core/libs/versionmanager -I /home/gilles/Documents/GIT/7.x/core/libs/video/manager -I /home/gilles/Documents/GIT/7.x/core/libs/video/player -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/colors -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/combo -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/files -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/fonts -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/graphicsview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/history -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/iccprofiles -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/itemview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/layout -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/mainview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/metadata -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/range -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/text -I /home/gilles/Documents/GIT/7.x/core/showfoto/main -I /home/gilles/Documents/GIT/7.x/core/showfoto/setup -I /home/gilles/Documents/GIT/7.x/core/showfoto/thumbbar -I /home/gilles/Documents/GIT/7.x/core/tests/advancedrename -I /home/gilles/Documents/GIT/7.x/core/tests/albummodel -I /home/gilles/Documents/GIT/7.x/core/tests/database -I /home/gilles/Documents/GIT/7.x/core/tests/dimg -I /home/gilles/Documents/GIT/7.x/core/tests/facesengine/demo -I /home/gilles/Documents/GIT/7.x/core/tests/facesengine -I /home/gilles/Documents/GIT/7.x/core/tests/fileio -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/editor -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface/demo -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/kmlexport -I /home/gilles/Documents/GIT/7.x/core/tests/imgqsort -I /home/gilles/Documents/GIT/7.x/core/tests/iojobs -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/examples/editsample -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/fakeserver -I /home/gilles/Documents/GIT/7.x/core/tests/metadataengine -I /home/gilles/Documents/GIT/7.x/core/tests/modeltest -I /home/gilles/Documents/GIT/7.x/core/tests/multithreading -I /home/gilles/Documents/GIT/7.x/core/tests/timestampupdate -I /home/gilles/Documents/GIT/7.x/core/tests/vkontakte -I /home/gilles/Documents/GIT/7.x/core/tests/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/common -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /home/gilles/Documents/GIT/7.x/core/utilities/extrasupport/addressbook -I /home/gilles/Documents/GIT/7.x/core/utilities/extrasupport/filesindexer -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/bench -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/database -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/items -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/threads -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/workers -I /home/gilles/Documents/GIT/7.x/core/utilities/firstrun -I /home/gilles/Documents/GIT/7.x/core/utilities/fuzzysearch -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/core -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/items -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/mapsearches -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/core -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/dialogs -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/editor -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/main -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/import/backend -I /home/gilles/Documents/GIT/7.x/core/utilities/import/dialogs -I /home/gilles/Documents/GIT/7.x/core/utilities/import/items -I /home/gilles/Documents/GIT/7.x/core/utilities/import/main -I /home/gilles/Documents/GIT/7.x/core/utilities/import/models -I /home/gilles/Documents/GIT/7.x/core/utilities/import/views -I /home/gilles/Documents/GIT/7.x/core/utilities/import/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/lighttable -I /home/gilles/Documents/GIT/7.x/core/utilities/maintenance -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/dplugins -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/main -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/manager -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/views -I /home/gilles/Documents/GIT/7.x/core/utilities/searchwindow -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/album -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/camera -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/collections -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/editor -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/metadata -I /home/gilles/Documents/GIT/7.x/core/utilities/setup -I /home/gilles/Documents/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /home/gilles/Documents/GIT/7.x/build.scan/core/app/utils -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/ImageMagick-7 -I /usr/include/lqr-1 -I /usr/include/glib-2.0 -I /usr/lib64/glib-2.0/include -I /usr/include/lensfun -I /usr/lib64/qt5/include -I /usr/lib64/qt5/include/QtConcurrent -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtXml -I /usr/include/KF5/KConfigCore -I /usr/include/KF5 -I /usr/include/KF5/KI18n -I /usr/include/KF5/KWidgetsAddons -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtX11Extras -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /home/gilles/Documents/GIT/7.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /home/gilles/Documents/GIT/7.x/project/reports/report.scan/2020-05-28-132109-7449-1 -x c++ /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/fx/oilpaintfilter.cpp -faddrsig
-

/mnt/devel/GIT/7.x/core/libs/dimg/filters/fx/oilpaintfilter.cpp

+

/home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/fx/oilpaintfilter.cpp

1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2005-05-25
7 * Description : Oil Painting threaded image filter.
8 *
9 * Copyright (C) 2005-2020 by Gilles Caulier <caulier dot gilles at gmail dot com>
10 * Copyright (C) 2006-2010 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
11 * Copyright (C) 2010 by Martin Klapetek <martin dot klapetek at gmail dot com>
12 *
13 * Original OilPaint algorithm copyrighted 2004 by
14 * Pieter Z. Voloshyn <pieter dot voloshyn at gmail dot com>.
15 *
16 * This program is free software; you can redistribute it
17 * and/or modify it under the terms of the GNU General
18 * Public License as published by the Free Software Foundation;
19 * either version 2, or (at your option)
20 * any later version.
21 *
22 * This program is distributed in the hope that it will be useful,
23 * but WITHOUT ANY WARRANTY; without even the implied warranty of
24 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 * GNU General Public License for more details.
26 *
27 * ============================================================ */
28
29#include "oilpaintfilter.h"
30
31// C++ includes
32
33#include <cmath>
34#include <cstdlib>
35
36// Qt includes
37
38#include <QtConcurrent> // krazy:exclude=includes
39#include <QMutex>
40
41// KDE includes
42
43#include <klocalizedstring.h>
44
45// Local includes
46
47#include "dimg.h"
48
49namespace Digikam
50{
51
52class Q_DECL_HIDDEN__attribute__((visibility("hidden"))) OilPaintFilter::Private
53{
54public:
55
56 explicit Private()
57 : brushSize(1),
58 smoothness(30),
59 globalProgress(0)
60 {
61 }
62
63 int brushSize;
64 int smoothness;
65
66 int globalProgress;
67
68 QMutex lock;
69};
70
71OilPaintFilter::OilPaintFilter(QObject* const parent)
72 : DImgThreadedFilter(parent),
73 d(new Private)
74{
75 initFilter();
76}
77
78OilPaintFilter::OilPaintFilter(DImg* const orgImage, QObject* const parent, int brushSize, int smoothness)
79 : DImgThreadedFilter(orgImage, parent, QLatin1String("OilPaintFilter")),
80 d(new Private)
81{
82 d->brushSize = brushSize;
83 d->smoothness = smoothness;
84
85 initFilter();
86}
87
88OilPaintFilter::~OilPaintFilter()
89{
90 cancelFilter();
91 delete d;
92}
93
94QString OilPaintFilter::DisplayableName()
95{
96 return QString::fromUtf8(I18N_NOOP("Oil Painter Effect")"Oil Painter Effect");
97}
98
99/**
100 * Function to apply the OilPaintFilter effect.
101 * This method have been ported from Pieter Z. Voloshyn algorithm code.
102 *
103 * Theory: Using MostFrequentColor function we take the main color in
104 * a matrix and simply write at the original position.
105 */
106void OilPaintFilter::oilPaintImageMultithreaded(uint start, uint stop)
107{
108 QScopedPointer<uchar> intensityCount(new uchar[d->smoothness + 1]);
109 QScopedPointer<uint> averageColorR(new uint[d->smoothness + 1]);
110 QScopedPointer<uint> averageColorG(new uint[d->smoothness + 1]);
111 QScopedPointer<uint> averageColorB(new uint[d->smoothness + 1]);
1
Memory is allocated
112
113 memset(intensityCount.data(), 0, sizeof(uchar)*(d->smoothness + 1));
114 memset(averageColorR.data(), 0, sizeof(uint)*(d->smoothness + 1));
115 memset(averageColorG.data(), 0, sizeof(uint)*(d->smoothness + 1));
116 memset(averageColorB.data(), 0, sizeof(uint)*(d->smoothness + 1));
117
118 int oldProgress=0, progress=0;
119 DColor mostFrequentColor;
120
121 mostFrequentColor.setSixteenBit(m_orgImage.sixteenBit());
122 uchar* dest = m_destImage.bits();
123 uchar* dptr = nullptr;
124
125 for (uint h2 = start ; runningFlag() && (h2 < stop) ; ++h2)
2
Assuming the condition is false
126 {
127 for (uint w2 = 0 ; runningFlag() && (w2 < m_orgImage.width()) ; ++w2)
128 {
129 mostFrequentColor = MostFrequentColor(m_orgImage, w2, h2, d->brushSize, d->smoothness,
130 intensityCount.data(), averageColorR.data(), averageColorG.data(), averageColorB.data());
131 dptr = dest + w2 * m_orgImage.bytesDepth() + (m_orgImage.width() * h2 * m_orgImage.bytesDepth());
132 mostFrequentColor.setPixel(dptr);
133 }
134
135 progress = (int)( ( (double)h2 * (100.0 / QThreadPool::globalInstance()->maxThreadCount()) ) / (stop-start));
136
137 if (((progress % 5) == 0) && (progress > oldProgress))
138 {
139 d->lock.lock();
140 oldProgress = progress;
141 d->globalProgress += 5;
142 postProgress(d->globalProgress);
143 d->lock.unlock();
144 }
145 }
146}
3
Calling '~QScopedPointer'
147
148void OilPaintFilter::filterImage()
149{
150 QList<int> vals = multithreadedSteps(m_orgImage.height());
151 QList <QFuture<void> > tasks;
152
153 for (int j = 0 ; runningFlag() && (j < vals.count()-1) ; ++j)
154 {
155 tasks.append(QtConcurrent::run(this,
156 &OilPaintFilter::oilPaintImageMultithreaded,
157 vals[j],
158 vals[j+1]
159 ));
160 }
161
162 foreach (QFuture<void> t, tasks)for (auto _container_ = QtPrivate::qMakeForeachContainer(tasks
); _container_.control && _container_.i != _container_
.e; ++_container_.i, _container_.control ^= 1) for (QFuture<
void> t = *_container_.i; _container_.control; _container_
.control = 0)
163 {
164 t.waitForFinished();
165 }
166}
167
168/**
169 * Function to determine the most frequent color in a matrix
170 *
171 * Bits => Bits array
172 * Width => Image width
173 * Height => Image height
174 * X => Position horizontal
175 * Y => Position vertical
176 * Radius => Is the radius of the matrix to be analyzed
177 * Intensity => Intensity to calculate
178 *
179 * Theory => This function creates a matrix with the analyzed pixel in
180 * the center of this matrix and find the most frequently color
181 */
182DColor OilPaintFilter::MostFrequentColor(DImg& src, int X, int Y, int Radius, int Intensity,
183 uchar* intensityCount, uint* averageColorR, uint* averageColorG, uint* averageColorB)
184{
185 int i, w, h, I, Width, Height;
186 uint red, green, blue;
187
188 uchar* dest = src.bits();
189 int bytesDepth = src.bytesDepth();
190 uchar* sptr = nullptr;
191 bool sixteenBit = src.sixteenBit();
192
193 DColor mostFrequentColor;
194
195 double Scale = Intensity / (sixteenBit ? 65535.0 : 255.0);
196 Width = (int)src.width();
197 Height = (int)src.height();
198
199 // Erase the array
200 memset(intensityCount, 0, (Intensity + 1) * sizeof(uchar));
201
202 for (w = X - Radius ; w <= X + Radius ; ++w)
203 {
204 for (h = Y - Radius ; h <= Y + Radius ; ++h)
205 {
206 // This condition helps to identify when a point doesn't exist
207
208 if ((w >= 0) && (w < Width) && (h >= 0) && (h < Height))
209 {
210 sptr = dest + w * bytesDepth + (Width * h * bytesDepth);
211 DColor color(sptr, sixteenBit);
212 red = (uint)color.red();
213 green = (uint)color.green();
214 blue = (uint)color.blue();
215
216 I = lround(GetIntensity(red, green, blue) * Scale);
217 intensityCount[I]++;
218
219 if (intensityCount[I] == 1)
220 {
221 averageColorR[I] = red;
222 averageColorG[I] = green;
223 averageColorB[I] = blue;
224 }
225 else
226 {
227 averageColorR[I] += red;
228 averageColorG[I] += green;
229 averageColorB[I] += blue;
230 }
231 }
232 }
233 }
234
235 I = 0;
236 int MaxInstance = 1;
237
238 for (i = 0 ; i <= Intensity ; ++i)
239 {
240 if (intensityCount[i] > MaxInstance)
241 {
242 I = i;
243 MaxInstance = intensityCount[i];
244 }
245 }
246
247 // get Alpha channel value from original (unchanged)
248 mostFrequentColor = src.getPixelColor(X, Y);
249
250 // Overwrite RGB values to destination.
251 mostFrequentColor.setRed(averageColorR[I] / MaxInstance);
252 mostFrequentColor.setGreen(averageColorG[I] / MaxInstance);
253 mostFrequentColor.setBlue(averageColorB[I] / MaxInstance);
254
255 return mostFrequentColor;
256}
257
258/** Function to calculate the color intensity and return the luminance (Y)
259 * component of YIQ color model.
260 */
261double OilPaintFilter::GetIntensity(uint Red, uint Green, uint Blue)
262{
263 return (Red * 0.3 + Green * 0.59 + Blue * 0.11);
264}
265
266FilterAction OilPaintFilter::filterAction()
267{
268 FilterAction action(FilterIdentifier(), CurrentVersion());
269 action.setDisplayableName(DisplayableName());
270
271 action.addParameter(QLatin1String("brushSize"), d->brushSize);
272 action.addParameter(QLatin1String("smoothness"), d->smoothness);
273
274 return action;
275}
276
277void OilPaintFilter::readParameters(const Digikam::FilterAction& action)
278{
279 d->brushSize = action.parameter(QLatin1String("brushSize")).toInt();
280 d->smoothness = action.parameter(QLatin1String("smoothness")).toInt();
281}
282
283} // namespace Digikam

/usr/lib64/qt5/include/QtCore/qscopedpointer.h

1/****************************************************************************
2**
3** Copyright (C) 2016 The Qt Company Ltd.
4** Contact: https://www.qt.io/licensing/
5**
6** This file is part of the QtCore module of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:LGPL$
9** Commercial License Usage
10** Licensees holding valid commercial Qt licenses may use this file in
11** accordance with the commercial license agreement provided with the
12** Software or, alternatively, in accordance with the terms contained in
13** a written agreement between you and The Qt Company. For licensing terms
14** and conditions see https://www.qt.io/terms-conditions. For further
15** information use the contact form at https://www.qt.io/contact-us.
16**
17** GNU Lesser General Public License Usage
18** Alternatively, this file may be used under the terms of the GNU Lesser
19** General Public License version 3 as published by the Free Software
20** Foundation and appearing in the file LICENSE.LGPL3 included in the
21** packaging of this file. Please review the following information to
22** ensure the GNU Lesser General Public License version 3 requirements
23** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24**
25** GNU General Public License Usage
26** Alternatively, this file may be used under the terms of the GNU
27** General Public License version 2.0 or (at your option) the GNU General
28** Public license version 3 or any later version approved by the KDE Free
29** Qt Foundation. The licenses are as published by the Free Software
30** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31** included in the packaging of this file. Please review the following
32** information to ensure the GNU General Public License requirements will
33** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34** https://www.gnu.org/licenses/gpl-3.0.html.
35**
36** $QT_END_LICENSE$
37**
38****************************************************************************/
39
40#ifndef QSCOPEDPOINTER_H
41#define QSCOPEDPOINTER_H
42
43#include <QtCore/qglobal.h>
44
45#include <stdlib.h>
46
47QT_BEGIN_NAMESPACE
48
49template <typename T>
50struct QScopedPointerDeleter
51{
52 static inline void cleanup(T *pointer)
53 {
54 // Enforce a complete type.
55 // If you get a compile error here, read the section on forward declared
56 // classes in the QScopedPointer documentation.
57 typedef char IsIncompleteType[ sizeof(T) ? 1 : -1 ];
58 (void) sizeof(IsIncompleteType);
59
60 delete pointer;
5
Memory allocated by 'new[]' should be deallocated by 'delete[]', not 'delete'
61 }
62};
63
64template <typename T>
65struct QScopedPointerArrayDeleter
66{
67 static inline void cleanup(T *pointer)
68 {
69 // Enforce a complete type.
70 // If you get a compile error here, read the section on forward declared
71 // classes in the QScopedPointer documentation.
72 typedef char IsIncompleteType[ sizeof(T) ? 1 : -1 ];
73 (void) sizeof(IsIncompleteType);
74
75 delete [] pointer;
76 }
77};
78
79struct QScopedPointerPodDeleter
80{
81 static inline void cleanup(void *pointer) { if (pointer) free(pointer); }
82};
83
84#ifndef QT_NO_QOBJECT
85template <typename T>
86struct QScopedPointerObjectDeleteLater
87{
88 static inline void cleanup(T *pointer) { if (pointer) pointer->deleteLater(); }
89};
90
91class QObject;
92typedef QScopedPointerObjectDeleteLater<QObject> QScopedPointerDeleteLater;
93#endif
94
95template <typename T, typename Cleanup = QScopedPointerDeleter<T> >
96class QScopedPointer
97{
98 typedef T *QScopedPointer:: *RestrictedBool;
99public:
100 explicit QScopedPointer(T *p = nullptr) Q_DECL_NOTHROWnoexcept : d(p)
101 {
102 }
103
104 inline ~QScopedPointer()
105 {
106 T *oldD = this->d;
107 Cleanup::cleanup(oldD);
4
Calling 'QScopedPointerDeleter::cleanup'
108 }
109
110 inline T &operator*() const
111 {
112 Q_ASSERT(d)((d) ? static_cast<void>(0) : qt_assert("d", "/usr/lib64/qt5/include/QtCore/qscopedpointer.h"
, 112))
;
113 return *d;
114 }
115
116 T *operator->() const Q_DECL_NOTHROWnoexcept
117 {
118 return d;
119 }
120
121 bool operator!() const Q_DECL_NOTHROWnoexcept
122 {
123 return !d;
124 }
125
126#if defined(Q_QDOC)
127 inline operator bool() const
128 {
129 return isNull() ? nullptr : &QScopedPointer::d;
130 }
131#else
132 operator RestrictedBool() const Q_DECL_NOTHROWnoexcept
133 {
134 return isNull() ? nullptr : &QScopedPointer::d;
135 }
136#endif
137
138 T *data() const Q_DECL_NOTHROWnoexcept
139 {
140 return d;
141 }
142
143 T *get() const Q_DECL_NOTHROWnoexcept
144 {
145 return d;
146 }
147
148 bool isNull() const Q_DECL_NOTHROWnoexcept
149 {
150 return !d;
151 }
152
153 void reset(T *other = nullptr) Q_DECL_NOEXCEPT_EXPR(noexcept(Cleanup::cleanup(std::declval<T *>())))noexcept(noexcept(Cleanup::cleanup(std::declval<T *>())
))
154 {
155 if (d == other)
156 return;
157 T *oldD = d;
158 d = other;
159 Cleanup::cleanup(oldD);
160 }
161
162 T *take() Q_DECL_NOTHROWnoexcept
163 {
164 T *oldD = d;
165 d = nullptr;
166 return oldD;
167 }
168
169 void swap(QScopedPointer<T, Cleanup> &other) Q_DECL_NOTHROWnoexcept
170 {
171 qSwap(d, other.d);
172 }
173
174 typedef T *pointer;
175
176protected:
177 T *d;
178
179private:
180 Q_DISABLE_COPY(QScopedPointer)QScopedPointer(const QScopedPointer &) = delete; QScopedPointer
&operator=(const QScopedPointer &) = delete;
181};
182
183template <class T, class Cleanup>
184inline bool operator==(const QScopedPointer<T, Cleanup> &lhs, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROWnoexcept
185{
186 return lhs.data() == rhs.data();
187}
188
189template <class T, class Cleanup>
190inline bool operator!=(const QScopedPointer<T, Cleanup> &lhs, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROWnoexcept
191{
192 return lhs.data() != rhs.data();
193}
194
195template <class T, class Cleanup>
196inline bool operator==(const QScopedPointer<T, Cleanup> &lhs, std::nullptr_t) Q_DECL_NOTHROWnoexcept
197{
198 return lhs.isNull();
199}
200
201template <class T, class Cleanup>
202inline bool operator==(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROWnoexcept
203{
204 return rhs.isNull();
205}
206
207template <class T, class Cleanup>
208inline bool operator!=(const QScopedPointer<T, Cleanup> &lhs, std::nullptr_t) Q_DECL_NOTHROWnoexcept
209{
210 return !lhs.isNull();
211}
212
213template <class T, class Cleanup>
214inline bool operator!=(std::nullptr_t, const QScopedPointer<T, Cleanup> &rhs) Q_DECL_NOTHROWnoexcept
215{
216 return !rhs.isNull();
217}
218
219template <class T, class Cleanup>
220inline void swap(QScopedPointer<T, Cleanup> &p1, QScopedPointer<T, Cleanup> &p2) Q_DECL_NOTHROWnoexcept
221{ p1.swap(p2); }
222
223template <typename T, typename Cleanup = QScopedPointerArrayDeleter<T> >
224class QScopedArrayPointer : public QScopedPointer<T, Cleanup>
225{
226 template <typename Ptr>
227 using if_same_type = typename std::enable_if<std::is_same<typename std::remove_cv<T>::type, Ptr>::value, bool>::type;
228public:
229 inline QScopedArrayPointer() : QScopedPointer<T, Cleanup>(nullptr) {}
230
231 template <typename D, if_same_type<D> = true>
232 explicit QScopedArrayPointer(D *p)
233 : QScopedPointer<T, Cleanup>(p)
234 {
235 }
236
237 inline T &operator[](int i)
238 {
239 return this->d[i];
240 }
241
242 inline const T &operator[](int i) const
243 {
244 return this->d[i];
245 }
246
247 void swap(QScopedArrayPointer &other) Q_DECL_NOTHROWnoexcept // prevent QScopedPointer <->QScopedArrayPointer swaps
248 { QScopedPointer<T, Cleanup>::swap(other); }
249
250private:
251 explicit inline QScopedArrayPointer(void *) {
252 // Enforce the same type.
253
254 // If you get a compile error here, make sure you declare
255 // QScopedArrayPointer with the same template type as you pass to the
256 // constructor. See also the QScopedPointer documentation.
257
258 // Storing a scalar array as a pointer to a different type is not
259 // allowed and results in undefined behavior.
260 }
261
262 Q_DISABLE_COPY(QScopedArrayPointer)QScopedArrayPointer(const QScopedArrayPointer &) = delete
; QScopedArrayPointer &operator=(const QScopedArrayPointer
&) = delete;
263};
264
265template <typename T, typename Cleanup>
266inline void swap(QScopedArrayPointer<T, Cleanup> &lhs, QScopedArrayPointer<T, Cleanup> &rhs) Q_DECL_NOTHROWnoexcept
267{ lhs.swap(rhs); }
268
269QT_END_NAMESPACE
270
271#endif // QSCOPEDPOINTER_H
diff --git a/static/reports/clang/master/report-d3a494.html b/static/reports/clang/master/report-f0f093.html similarity index 70% rename from static/reports/clang/master/report-d3a494.html rename to static/reports/clang/master/report-f0f093.html index 2db6a1305..7ad501318 100644 --- a/static/reports/clang/master/report-d3a494.html +++ b/static/reports/clang/master/report-f0f093.html @@ -1,890 +1,891 @@ /usr/lib64/qt5/include/QtCore/qshareddata.h

Bug Summary

File:usr/lib64/qt5/include/QtCore/qshareddata.h
Warning:line 159, column 36
Use of memory after it is freed

Annotated Source Code

Press '?' to see keyboard shortcuts

-
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_data.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_USE_QSTRINGBUILDER -D TRANSLATION_DOMAIN="digikam" -D UNIX_ENV=1 -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -D digikamcore_EXPORTS -D qDNGLittleEndian -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget -D qMacOS=0 -D qWinOS=0 -I /mnt/devel/GIT/7.x/build.scan/core/libs/dimg -I /mnt/devel/GIT/7.x/core/libs/dimg -I /mnt/devel/GIT/7.x/build.scan/core/libs/dimg/core_dimg_obj_autogen/include -I /mnt/devel/GIT/7.x/core/app/date -I /mnt/devel/GIT/7.x/core/app/dragdrop -I /mnt/devel/GIT/7.x/core/app/filters -I /mnt/devel/GIT/7.x/core/app/items/delegate -I /mnt/devel/GIT/7.x/core/app/items/overlays -I /mnt/devel/GIT/7.x/core/app/items/thumbbar -I /mnt/devel/GIT/7.x/core/app/items/utils -I /mnt/devel/GIT/7.x/core/app/items/views -I /mnt/devel/GIT/7.x/core/app/main -I /mnt/devel/GIT/7.x/core/app/utils -I /mnt/devel/GIT/7.x/core/app/views/preview -I /mnt/devel/GIT/7.x/core/app/views/sidebar -I /mnt/devel/GIT/7.x/core/app/views/stack -I /mnt/devel/GIT/7.x/core/app/views/tableview -I /mnt/devel/GIT/7.x/core/app/views/utils -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /mnt/devel/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /mnt/devel/GIT/7.x/core/dplugins/bqm/custom/userscript -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /mnt/devel/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/crop -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/flip -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/bqm/transform/rotate -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /mnt/devel/GIT/7.x/core/dplugins/dimg/heif/libheif -I /mnt/devel/GIT/7.x/core/dplugins/dimg/imagemagick -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg -I /mnt/devel/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /mnt/devel/GIT/7.x/core/dplugins/dimg/pgf -I /mnt/devel/GIT/7.x/core/dplugins/dimg/png -I /mnt/devel/GIT/7.x/core/dplugins/dimg/qimage -I /mnt/devel/GIT/7.x/core/dplugins/dimg/raw -I /mnt/devel/GIT/7.x/core/dplugins/dimg/tiff -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bcg -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/film -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/hsl -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/invert -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /mnt/devel/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/border -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /mnt/devel/GIT/7.x/core/dplugins/editor/decorate/texture -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/blur -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/redeye -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/restoration -I /mnt/devel/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /mnt/devel/GIT/7.x/core/dplugins/editor/file/print -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/blurfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/charcoal -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/colorfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/emboss -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /mnt/devel/GIT/7.x/core/dplugins/editor/filters/raindrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/autocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/freerotation -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/perspective -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/resize -I /mnt/devel/GIT/7.x/core/dplugins/editor/transform/shear -I /mnt/devel/GIT/7.x/core/dplugins/generic/import/dscanner -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /mnt/devel/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/glviewer -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow -I /mnt/devel/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/box -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/facebook -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/flickr -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/google -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/imgur -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/rajce -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/twitter -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /mnt/devel/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/darktable -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/native -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /mnt/devel/GIT/7.x/core/dplugins/rawimport/ufraw -I /mnt/devel/GIT/7.x/core/libs/album/engine -I /mnt/devel/GIT/7.x/core/libs/album/manager -I /mnt/devel/GIT/7.x/core/libs/album/treeview -I /mnt/devel/GIT/7.x/core/libs/album/widgets -I /mnt/devel/GIT/7.x/core/libs/database/collection -I /mnt/devel/GIT/7.x/core/libs/database/coredb -I /mnt/devel/GIT/7.x/core/libs/database/dbjobs -I /mnt/devel/GIT/7.x/core/libs/database/engine -I /mnt/devel/GIT/7.x/core/libs/database/haar -I /mnt/devel/GIT/7.x/core/libs/database/history -I /mnt/devel/GIT/7.x/core/libs/database/item/containers -I /mnt/devel/GIT/7.x/core/libs/database/item/lister -I /mnt/devel/GIT/7.x/core/libs/database/item/query -I /mnt/devel/GIT/7.x/core/libs/database/item/scanner -I /mnt/devel/GIT/7.x/core/libs/database/models -I /mnt/devel/GIT/7.x/core/libs/database/server -I /mnt/devel/GIT/7.x/core/libs/database/similaritydb -I /mnt/devel/GIT/7.x/core/libs/database/tags -I /mnt/devel/GIT/7.x/core/libs/database/thumbsdb -I /mnt/devel/GIT/7.x/core/libs/database/utils/ifaces -I /mnt/devel/GIT/7.x/core/libs/database/utils/scan -I /mnt/devel/GIT/7.x/core/libs/database/utils/widgets -I /mnt/devel/GIT/7.x/core/libs/dialogs -I /mnt/devel/GIT/7.x/core/libs/dimg/color -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/auto -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bcg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/bw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/cb -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/curves -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/decorate -I /mnt/devel/GIT/7.x/core/libs/dimg/filters -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/film -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/fx -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/greycstoration -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/hsl -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/icc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/imgqsort -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lc -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/lens -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/levels -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/nr -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/raw -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/redeye -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/sharp -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/transform -I /mnt/devel/GIT/7.x/core/libs/dimg/filters/wb -I /mnt/devel/GIT/7.x/core/libs/dimg/history -I /mnt/devel/GIT/7.x/core/libs/dimg/loaders -I /mnt/devel/GIT/7.x/core/libs/dngwriter -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/md5 -I /mnt/devel/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /mnt/devel/GIT/7.x/core/libs/dplugins/core -I /mnt/devel/GIT/7.x/core/libs/dplugins/iface -I /mnt/devel/GIT/7.x/core/libs/dplugins/setup -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /mnt/devel/GIT/7.x/core/libs/dplugins/webservices -I /mnt/devel/GIT/7.x/core/libs/dplugins/widgets -I /mnt/devel/GIT/7.x/core/libs/dragdrop -I /mnt/devel/GIT/7.x/core/libs/dtrash -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/congealing -I /mnt/devel/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /mnt/devel/GIT/7.x/core/libs/facesengine/common -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/facedb -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /mnt/devel/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /mnt/devel/GIT/7.x/core/libs/facesengine/recognition -I /mnt/devel/GIT/7.x/core/libs/fileactionmanager -I /mnt/devel/GIT/7.x/core/libs/filters -I /mnt/devel/GIT/7.x/core/libs/iojobs -I /mnt/devel/GIT/7.x/core/libs/jpegutils -I /mnt/devel/GIT/7.x/core/libs/kmemoryinfo -I /mnt/devel/GIT/7.x/core/libs/metadataengine/containers -I /mnt/devel/GIT/7.x/core/libs/metadataengine/dmetadata -I /mnt/devel/GIT/7.x/core/libs/metadataengine/engine -I /mnt/devel/GIT/7.x/core/libs/models -I /mnt/devel/GIT/7.x/core/libs/notificationmanager -I /mnt/devel/GIT/7.x/core/libs/pgfutils/libpgf -I /mnt/devel/GIT/7.x/core/libs/pgfutils -I /mnt/devel/GIT/7.x/core/libs/progressmanager -I /mnt/devel/GIT/7.x/core/libs/properties/captions -I /mnt/devel/GIT/7.x/core/libs/properties/geolocation -I /mnt/devel/GIT/7.x/core/libs/properties/history -I /mnt/devel/GIT/7.x/core/libs/properties/import -I /mnt/devel/GIT/7.x/core/libs/properties -I /mnt/devel/GIT/7.x/core/libs/rawengine -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/internal -I /mnt/devel/GIT/7.x/core/libs/rawengine/libraw/libraw -I /mnt/devel/GIT/7.x/core/libs/settings -I /mnt/devel/GIT/7.x/core/libs/tags/engine -I /mnt/devel/GIT/7.x/core/libs/tags/manager/models -I /mnt/devel/GIT/7.x/core/libs/tags/manager -I /mnt/devel/GIT/7.x/core/libs/tags/widgets -I /mnt/devel/GIT/7.x/core/libs/template -I /mnt/devel/GIT/7.x/core/libs/threadimageio/engine -I /mnt/devel/GIT/7.x/core/libs/threadimageio/fileio -I /mnt/devel/GIT/7.x/core/libs/threadimageio/preview -I /mnt/devel/GIT/7.x/core/libs/threadimageio/thumb -I /mnt/devel/GIT/7.x/core/libs/threadimageio/video -I /mnt/devel/GIT/7.x/core/libs/threads -I /mnt/devel/GIT/7.x/core/libs/timeadjust -I /mnt/devel/GIT/7.x/core/libs/transitionmngr -I /mnt/devel/GIT/7.x/core/libs/versionmanager -I /mnt/devel/GIT/7.x/core/libs/video/manager -I /mnt/devel/GIT/7.x/core/libs/video/player -I /mnt/devel/GIT/7.x/core/libs/widgets/colors -I /mnt/devel/GIT/7.x/core/libs/widgets/combo -I /mnt/devel/GIT/7.x/core/libs/widgets/files -I /mnt/devel/GIT/7.x/core/libs/widgets/fonts -I /mnt/devel/GIT/7.x/core/libs/widgets/graphicsview -I /mnt/devel/GIT/7.x/core/libs/widgets/history -I /mnt/devel/GIT/7.x/core/libs/widgets/iccprofiles -I /mnt/devel/GIT/7.x/core/libs/widgets/itemview -I /mnt/devel/GIT/7.x/core/libs/widgets/layout -I /mnt/devel/GIT/7.x/core/libs/widgets/mainview -I /mnt/devel/GIT/7.x/core/libs/widgets/metadata -I /mnt/devel/GIT/7.x/core/libs/widgets/range -I /mnt/devel/GIT/7.x/core/libs/widgets/text -I /mnt/devel/GIT/7.x/core/showfoto/main -I /mnt/devel/GIT/7.x/core/showfoto/setup -I /mnt/devel/GIT/7.x/core/showfoto/thumbbar -I /mnt/devel/GIT/7.x/core/tests/advancedrename -I /mnt/devel/GIT/7.x/core/tests/albummodel -I /mnt/devel/GIT/7.x/core/tests/database -I /mnt/devel/GIT/7.x/core/tests/dimg -I /mnt/devel/GIT/7.x/core/tests/facesengine/demo -I /mnt/devel/GIT/7.x/core/tests/facesengine -I /mnt/devel/GIT/7.x/core/tests/fileio -I /mnt/devel/GIT/7.x/core/tests/geolocation/editor -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface/demo -I /mnt/devel/GIT/7.x/core/tests/geolocation/geoiface -I /mnt/devel/GIT/7.x/core/tests/geolocation/kmlexport -I /mnt/devel/GIT/7.x/core/tests/imgqsort -I /mnt/devel/GIT/7.x/core/tests/iojobs -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/editsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /mnt/devel/GIT/7.x/core/tests/mediawiki/fakeserver -I /mnt/devel/GIT/7.x/core/tests/metadataengine -I /mnt/devel/GIT/7.x/core/tests/modeltest -I /mnt/devel/GIT/7.x/core/tests/multithreading -I /mnt/devel/GIT/7.x/core/tests/timestampupdate -I /mnt/devel/GIT/7.x/core/tests/vkontakte -I /mnt/devel/GIT/7.x/core/tests/widgets -I /mnt/devel/GIT/7.x/core/utilities/advancedrename -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/common -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /mnt/devel/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/addressbook -I /mnt/devel/GIT/7.x/core/utilities/extrasupport/filesindexer -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/bench -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/database -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/items -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/threads -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/widgets -I /mnt/devel/GIT/7.x/core/utilities/facemanagement/workers -I /mnt/devel/GIT/7.x/core/utilities/firstrun -I /mnt/devel/GIT/7.x/core/utilities/fuzzysearch -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/core -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/items -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /mnt/devel/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /mnt/devel/GIT/7.x/core/utilities/geolocation/mapsearches -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/core -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/dialogs -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/editor -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/main -I /mnt/devel/GIT/7.x/core/utilities/imageeditor/widgets -I /mnt/devel/GIT/7.x/core/utilities/import/backend -I /mnt/devel/GIT/7.x/core/utilities/import/dialogs -I /mnt/devel/GIT/7.x/core/utilities/import/items -I /mnt/devel/GIT/7.x/core/utilities/import/main -I /mnt/devel/GIT/7.x/core/utilities/import/models -I /mnt/devel/GIT/7.x/core/utilities/import/views -I /mnt/devel/GIT/7.x/core/utilities/import/widgets -I /mnt/devel/GIT/7.x/core/utilities/lighttable -I /mnt/devel/GIT/7.x/core/utilities/maintenance -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/dplugins -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/main -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/manager -I /mnt/devel/GIT/7.x/core/utilities/queuemanager/views -I /mnt/devel/GIT/7.x/core/utilities/searchwindow -I /mnt/devel/GIT/7.x/core/utilities/setup/album -I /mnt/devel/GIT/7.x/core/utilities/setup/camera -I /mnt/devel/GIT/7.x/core/utilities/setup/collections -I /mnt/devel/GIT/7.x/core/utilities/setup/editor -I /mnt/devel/GIT/7.x/core/utilities/setup/metadata -I /mnt/devel/GIT/7.x/core/utilities/setup -I /mnt/devel/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /mnt/devel/GIT/7.x/build.scan/core/app/utils -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/lensfun -I /usr/include/ImageMagick-7 -I /usr/include/lqr-1 -I /usr/include/glib-2.0 -I /usr/lib64/glib-2.0/include -I /usr/lib64/qt5/include -I /usr/lib64/qt5/include/QtConcurrent -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtXml -I /usr/include/KF5/KConfigCore -I /usr/include/KF5 -I /usr/include/KF5/KI18n -I /usr/include/KF5/KWidgetsAddons -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtX11Extras -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /mnt/devel/GIT/7.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /mnt/devel/GIT/7.x/project/reports/report.scan/2020-05-22-222329-1869-1 -x c++ /mnt/devel/GIT/7.x/core/libs/dimg/dimg_data.cpp -faddrsig +
clang -cc1 -triple x86_64-unknown-linux-gnu -analyze -disable-free -disable-llvm-verifier -discard-value-names -main-file-name dimg_data.cpp -analyzer-store=region -analyzer-opt-analyze-nested-blocks -analyzer-checker=core -analyzer-checker=apiModeling -analyzer-checker=unix -analyzer-checker=deadcode -analyzer-checker=cplusplus -analyzer-checker=security.insecureAPI.UncheckedReturn -analyzer-checker=security.insecureAPI.getpw -analyzer-checker=security.insecureAPI.gets -analyzer-checker=security.insecureAPI.mktemp -analyzer-checker=security.insecureAPI.mkstemp -analyzer-checker=security.insecureAPI.vfork -analyzer-checker=nullability.NullPassedToNonnull -analyzer-checker=nullability.NullReturnedFromNonnull -analyzer-output plist -w -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -dwarf-column-info -debugger-tuning=gdb -resource-dir /usr/lib64/clang/8.0.0 -D LIBPGF_DISABLE_OPENMP -D MAGICKCORE_HDRI_ENABLE=1 -D MAGICKCORE_QUANTUM_DEPTH=16 -D QT_NO_CAST_FROM_ASCII -D QT_NO_CAST_FROM_BYTEARRAY -D QT_NO_CAST_TO_ASCII -D QT_NO_NARROWING_CONVERSIONS_IN_CONNECT -D QT_NO_SIGNALS_SLOTS_KEYWORDS -D QT_NO_URL_CAST_FROM_STRING -D QT_USE_QSTRINGBUILDER -D TRANSLATION_DOMAIN="digikam" -D UNIX_ENV=1 -D USE_JASPER -D USE_JPEG -D USE_JPEG8 -D _GNU_SOURCE -D _LARGEFILE64_SOURCE -D digikamcore_EXPORTS -D qDNGLittleEndian -D qDNGThreadSafe=1 -D qDNGUseStdInt=1 -D qDNGValidateTarget -D qMacOS=0 -D qWinOS=0 -I /home/gilles/Documents/GIT/7.x/build.scan/core/libs/dimg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg -I /home/gilles/Documents/GIT/7.x/build.scan/core/libs/dimg/core_dimg_obj_autogen/include -I /home/gilles/Documents/GIT/7.x/core/app/date -I /home/gilles/Documents/GIT/7.x/core/app/dragdrop -I /home/gilles/Documents/GIT/7.x/core/app/filters -I /home/gilles/Documents/GIT/7.x/core/app/items/delegate -I /home/gilles/Documents/GIT/7.x/core/app/items/overlays -I /home/gilles/Documents/GIT/7.x/core/app/items/thumbbar -I /home/gilles/Documents/GIT/7.x/core/app/items/utils -I /home/gilles/Documents/GIT/7.x/core/app/items/views -I /home/gilles/Documents/GIT/7.x/core/app/main -I /home/gilles/Documents/GIT/7.x/core/app/utils -I /home/gilles/Documents/GIT/7.x/core/app/views/preview -I /home/gilles/Documents/GIT/7.x/core/app/views/sidebar -I /home/gilles/Documents/GIT/7.x/core/app/views/stack -I /home/gilles/Documents/GIT/7.x/core/app/views/tableview -I /home/gilles/Documents/GIT/7.x/core/app/views/utils -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/autocorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/bcgcorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/bwconvert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/channelmixer -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/colorbalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/convert16to8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/convert8to16 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/curvesadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/hslcorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/iccconvert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/invert -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/colors/whitebalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttodng -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttoheif -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttojp2 -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttojpeg -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttopgf -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttopng -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/convert/converttotiff -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/custom/userscript -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/decorate/border -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/decorate/watermark -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/antivignetting -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/blur -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/lensautofix -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/localcontrast -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/noisereduction -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/redeyecorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/restoration -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/enhance/sharpen -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/filters/colorfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/filters/filmgrain -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/assigntemplate -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/removemetadata -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/metadata/timeadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/crop -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/flip -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/resize -I /home/gilles/Documents/GIT/7.x/core/dplugins/bqm/transform/rotate -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265 -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder/algo -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/encoder -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libde265/extra -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/heif/libheif -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/imagemagick -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/jpeg -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/jpeg2000 -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/pgf -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/png -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/qimage -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/raw -I /home/gilles/Documents/GIT/7.x/core/dplugins/dimg/tiff -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/adjustcurves -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/adjustlevels -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/autocorrection -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/bcg -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/bwsepia -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/channelmixer -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/colorbalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/convert16to8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/convert8to16 -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/film -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/hsl -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/invert -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/profileconversion -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/colors/whitebalance -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/border -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/inserttext -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/decorate/texture -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/antivignetting -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/blur -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/healingclone -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/hotpixels -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/lensautofix -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/lensdistortion -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/localcontrast -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/noisereduction -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/redeye -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/restoration -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/enhance/sharpen -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/file/print -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/blurfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/charcoal -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/colorfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/distortionfx -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/emboss -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/filmgrain -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/oilpaint -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/filters/raindrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/autocrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/contentawareresize -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/freerotation -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/perspective -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/ratiocrop -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/resize -I /home/gilles/Documents/GIT/7.x/core/dplugins/editor/transform/shear -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/import/dscanner -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/dialog -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/kmlexport -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/geolocationedit/searches -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/dialog -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/exif -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/iptc -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/metadataedit/xmp -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/metadata/timeadjust -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar/print -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/calendar/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/blendingdlg -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/expoblending/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/generator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/parameters -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/htmlgallery/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/generator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/jalbum/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/server -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Core -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Cocoa -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Win32 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinCE -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/WinRT -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/System/Xbox -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/Source/Tests/Tls1 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Generic -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/config/Win32 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/crypto -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/axTLS/ssl -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.3 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Neptune/ThirdParty/zlib-1.2.8 -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/CocoaTouchBrowser -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MediaCrawler -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Apps/MicroMediaController -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Core -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaConnect -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaRenderer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Devices/MediaServer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/Managed -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras/ObjectiveC -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Extras -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platform/Android/module/platinum/jni -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Platinum -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/LightSample -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/MediaServerCocoaTest -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tests/Simple -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/mediaserver/upnpsdk/Platinum/Source/Tools/SsdpProxy -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptoparser -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/panoparser/ptotype -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/tasks -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/panorama/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/printcreator/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/tools -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/sendbymail/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/videoslideshow -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/videoslideshow/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/tools/wallpaper -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/glviewer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/audio -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/common -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/dialogs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/opengl -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/presentation/widgets -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/common -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/dialogs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/view/slideshow/widgets -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/box -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/debianscreenshots -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/dropbox -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/facebook -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/filecopy -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/filetransfer -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/flickr -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google/gdrive -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google/gphoto -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/google -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/imageshack -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/imgur -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/ipfs -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/mediawiki/backend -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/mediawiki -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/onedrive -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/pinterest -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/piwigo -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/rajce -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/smugmug -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/twitter -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified/manager -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/unified/wizard -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend/attic -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend/deprecated -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte/backend -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/vkontakte -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/yandexfotki -I /home/gilles/Documents/GIT/7.x/core/dplugins/generic/webservices/yandexfotki/yfauth -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/darktable -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/native -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/rawtherapee -I /home/gilles/Documents/GIT/7.x/core/dplugins/rawimport/ufraw -I /home/gilles/Documents/GIT/7.x/core/libs/album/engine -I /home/gilles/Documents/GIT/7.x/core/libs/album/manager -I /home/gilles/Documents/GIT/7.x/core/libs/album/treeview -I /home/gilles/Documents/GIT/7.x/core/libs/album/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/database/collection -I /home/gilles/Documents/GIT/7.x/core/libs/database/coredb -I /home/gilles/Documents/GIT/7.x/core/libs/database/dbjobs -I /home/gilles/Documents/GIT/7.x/core/libs/database/engine -I /home/gilles/Documents/GIT/7.x/core/libs/database/haar -I /home/gilles/Documents/GIT/7.x/core/libs/database/history -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/containers -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/lister -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/query -I /home/gilles/Documents/GIT/7.x/core/libs/database/item/scanner -I /home/gilles/Documents/GIT/7.x/core/libs/database/models -I /home/gilles/Documents/GIT/7.x/core/libs/database/server -I /home/gilles/Documents/GIT/7.x/core/libs/database/similaritydb -I /home/gilles/Documents/GIT/7.x/core/libs/database/tags -I /home/gilles/Documents/GIT/7.x/core/libs/database/thumbsdb -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/ifaces -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/scan -I /home/gilles/Documents/GIT/7.x/core/libs/database/utils/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/dialogs -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/color -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/auto -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/bcg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/bw -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/cb -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/curves -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/decorate -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/film -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/fx -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/greycstoration/cimg -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/greycstoration -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/hsl -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/icc -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/imgqsort -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/lc -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/lens -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/levels -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/nr -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/raw -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/redeye -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/sharp -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/transform -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/filters/wb -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/history -I /home/gilles/Documents/GIT/7.x/core/libs/dimg/loaders -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/dng_sdk -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/md5 -I /home/gilles/Documents/GIT/7.x/core/libs/dngwriter/extra/xmp_sdk/include -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/core -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/iface -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/setup -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/facebookexternalinterceptordemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/msgraphdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/msgraphexternalinterceptordemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/sialis -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/twitterdemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/vimeodemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/examples/youtubedemo -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices/o2/src -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/webservices -I /home/gilles/Documents/GIT/7.x/core/libs/dplugins/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/dragdrop -I /home/gilles/Documents/GIT/7.x/core/libs/dtrash -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/alignment/congealing -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/alignment/flandmark -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/common -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection/opencv-dnn -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/detection/opencv-face -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/facedb -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/recognition -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/shape-predictor -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/preprocessing/tantriggs -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-dnn -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-eigenfaces -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-face -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-fisherfaces -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition/opencv-lbph -I /home/gilles/Documents/GIT/7.x/core/libs/facesengine/recognition -I /home/gilles/Documents/GIT/7.x/core/libs/fileactionmanager -I /home/gilles/Documents/GIT/7.x/core/libs/filters -I /home/gilles/Documents/GIT/7.x/core/libs/iojobs -I /home/gilles/Documents/GIT/7.x/core/libs/jpegutils -I /home/gilles/Documents/GIT/7.x/core/libs/kmemoryinfo -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/containers -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/dmetadata -I /home/gilles/Documents/GIT/7.x/core/libs/metadataengine/engine -I /home/gilles/Documents/GIT/7.x/core/libs/models -I /home/gilles/Documents/GIT/7.x/core/libs/notificationmanager -I /home/gilles/Documents/GIT/7.x/core/libs/pgfutils/libpgf -I /home/gilles/Documents/GIT/7.x/core/libs/pgfutils -I /home/gilles/Documents/GIT/7.x/core/libs/progressmanager -I /home/gilles/Documents/GIT/7.x/core/libs/properties/captions -I /home/gilles/Documents/GIT/7.x/core/libs/properties/geolocation -I /home/gilles/Documents/GIT/7.x/core/libs/properties/history -I /home/gilles/Documents/GIT/7.x/core/libs/properties/import -I /home/gilles/Documents/GIT/7.x/core/libs/properties -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine/libraw/internal -I /home/gilles/Documents/GIT/7.x/core/libs/rawengine/libraw/libraw -I /home/gilles/Documents/GIT/7.x/core/libs/settings -I /home/gilles/Documents/GIT/7.x/core/libs/tags/engine -I /home/gilles/Documents/GIT/7.x/core/libs/tags/manager/models -I /home/gilles/Documents/GIT/7.x/core/libs/tags/manager -I /home/gilles/Documents/GIT/7.x/core/libs/tags/widgets -I /home/gilles/Documents/GIT/7.x/core/libs/template -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/engine -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/fileio -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/preview -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/thumb -I /home/gilles/Documents/GIT/7.x/core/libs/threadimageio/video -I /home/gilles/Documents/GIT/7.x/core/libs/threads -I /home/gilles/Documents/GIT/7.x/core/libs/timeadjust -I /home/gilles/Documents/GIT/7.x/core/libs/transitionmngr -I /home/gilles/Documents/GIT/7.x/core/libs/versionmanager -I /home/gilles/Documents/GIT/7.x/core/libs/video/manager -I /home/gilles/Documents/GIT/7.x/core/libs/video/player -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/colors -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/combo -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/files -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/fonts -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/graphicsview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/history -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/iccprofiles -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/itemview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/layout -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/mainview -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/metadata -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/range -I /home/gilles/Documents/GIT/7.x/core/libs/widgets/text -I /home/gilles/Documents/GIT/7.x/core/showfoto/main -I /home/gilles/Documents/GIT/7.x/core/showfoto/setup -I /home/gilles/Documents/GIT/7.x/core/showfoto/thumbbar -I /home/gilles/Documents/GIT/7.x/core/tests/advancedrename -I /home/gilles/Documents/GIT/7.x/core/tests/albummodel -I /home/gilles/Documents/GIT/7.x/core/tests/database -I /home/gilles/Documents/GIT/7.x/core/tests/dimg -I /home/gilles/Documents/GIT/7.x/core/tests/facesengine/demo -I /home/gilles/Documents/GIT/7.x/core/tests/facesengine -I /home/gilles/Documents/GIT/7.x/core/tests/fileio -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/editor -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface/calibrator -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface/demo -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/geoiface -I /home/gilles/Documents/GIT/7.x/core/tests/geolocation/kmlexport -I /home/gilles/Documents/GIT/7.x/core/tests/imgqsort -I /home/gilles/Documents/GIT/7.x/core/tests/iojobs -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/examples/editsample -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/examples/uploadsample -I /home/gilles/Documents/GIT/7.x/core/tests/mediawiki/fakeserver -I /home/gilles/Documents/GIT/7.x/core/tests/metadataengine -I /home/gilles/Documents/GIT/7.x/core/tests/modeltest -I /home/gilles/Documents/GIT/7.x/core/tests/multithreading -I /home/gilles/Documents/GIT/7.x/core/tests/timestampupdate -I /home/gilles/Documents/GIT/7.x/core/tests/vkontakte -I /home/gilles/Documents/GIT/7.x/core/tests/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/common -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/modifiers -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options/database -I /home/gilles/Documents/GIT/7.x/core/utilities/advancedrename/parser/options/database/keys -I /home/gilles/Documents/GIT/7.x/core/utilities/extrasupport/addressbook -I /home/gilles/Documents/GIT/7.x/core/utilities/extrasupport/filesindexer -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/bench -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/database -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/items -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/threads -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/facemanagement/workers -I /home/gilles/Documents/GIT/7.x/core/utilities/firstrun -I /home/gilles/Documents/GIT/7.x/core/utilities/fuzzysearch -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/backends -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/bookmark -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/core -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/correlator -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/dragdrop -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/items -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/lookup -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/reversegeocoding -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/tiles -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/tracks -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geoiface/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/geomapwrapper -I /home/gilles/Documents/GIT/7.x/core/utilities/geolocation/mapsearches -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/core -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/dialogs -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/editor -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/main -I /home/gilles/Documents/GIT/7.x/core/utilities/imageeditor/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/import/backend -I /home/gilles/Documents/GIT/7.x/core/utilities/import/dialogs -I /home/gilles/Documents/GIT/7.x/core/utilities/import/items -I /home/gilles/Documents/GIT/7.x/core/utilities/import/main -I /home/gilles/Documents/GIT/7.x/core/utilities/import/models -I /home/gilles/Documents/GIT/7.x/core/utilities/import/views -I /home/gilles/Documents/GIT/7.x/core/utilities/import/widgets -I /home/gilles/Documents/GIT/7.x/core/utilities/lighttable -I /home/gilles/Documents/GIT/7.x/core/utilities/maintenance -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/dplugins -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/main -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/manager -I /home/gilles/Documents/GIT/7.x/core/utilities/queuemanager/views -I /home/gilles/Documents/GIT/7.x/core/utilities/searchwindow -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/album -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/camera -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/collections -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/editor -I /home/gilles/Documents/GIT/7.x/core/utilities/setup/metadata -I /home/gilles/Documents/GIT/7.x/core/utilities/setup -I /home/gilles/Documents/GIT/7.x/core/libs/jpegutils/libjpeg/84 -I /home/gilles/Documents/GIT/7.x/build.scan/core/app/utils -I /usr/lib64/qt5/include/QtAV /usr/lib64/qt5/include/QtAVWidgets -I /usr/include/opencv -I /usr/include/ImageMagick-7 -I /usr/include/lqr-1 -I /usr/include/glib-2.0 -I /usr/lib64/glib-2.0/include -I /usr/include/lensfun -I /usr/lib64/qt5/include -I /usr/lib64/qt5/include/QtConcurrent -I /usr/lib64/qt5/include/QtCore -I /usr/lib64/qt5/./mkspecs/linux-g++ -I /usr/lib64/qt5/include/QtXml -I /usr/include/KF5/KConfigCore -I /usr/include/KF5 -I /usr/include/KF5/KI18n -I /usr/include/KF5/KWidgetsAddons -I /usr/lib64/qt5/include/QtWidgets -I /usr/lib64/qt5/include/QtGui -I /usr/lib64/qt5/include/QtX11Extras -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/x86_64-mageia-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-mageia-linux-gnu/8.4.0/../../../../include/c++/8.4.0/backward -internal-isystem /usr/local/include -internal-isystem /usr/lib64/clang/8.0.0/include -internal-externc-isystem /include -internal-externc-isystem /usr/include -Wno-long-long -Wno-long-long -std=c++0x -fdeprecated-macro -fdebug-compilation-dir /home/gilles/Documents/GIT/7.x/build.scan/core/libs/dimg -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -fopenmp -fobjc-runtime=gcc -fcxx-exceptions -fexceptions -fdiagnostics-show-option -analyzer-output=html -o /home/gilles/Documents/GIT/7.x/project/reports/report.scan/2020-05-28-132109-7449-1 -x c++ /home/gilles/Documents/GIT/7.x/core/libs/dimg/dimg_data.cpp -faddrsig
-

/mnt/devel/GIT/7.x/core/libs/dimg/dimg_data.cpp

+

/home/gilles/Documents/GIT/7.x/core/libs/dimg/dimg_data.cpp

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1/* ============================================================
2 *
3 * This file is a part of digiKam project
4 * https://www.digikam.org
5 *
6 * Date : 2005-06-14
7 * Description : digiKam 8/16 bits image management API.
8 * Data management.
9 *
10 * Copyright (C) 2005-2020 by Gilles Caulier <caulier dot gilles at gmail dot com>
11 * Copyright (C) 2006-2013 by Marcel Wiesweg <marcel dot wiesweg at gmx dot de>
12 *
13 * This program is free software; you can redistribute it
14 * and/or modify it under the terms of the GNU General
15 * Public License as published by the Free Software Foundation;
16 * either version 2, or (at your option)
17 * any later version.
18 *
19 * This program is distributed in the hope that it will be useful,
20 * but WITHOUT ANY WARRANTY; without even the implied warranty of
21 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
22 * GNU General Public License for more details.
23 *
24 * ============================================================ */
25
26#include "dimg_p.h"
27
28namespace Digikam
29{
30
31DImg& DImg::operator=(const DImg& image)
32{
33 m_priv = image.m_priv;
34
35 return *this;
36}
37
38bool DImg::operator==(const DImg& image) const
39{
40 return (m_priv == image.m_priv);
41}
42
43void DImg::reset()
44{
45 m_priv = new Private;
46}
47
48void DImg::detach()
49{
50 // are we being shared?
51
52 if (m_priv->ref == 1)
1
Taking false branch
53 {
54 return;
55 }
56
57 QExplicitlySharedDataPointer<Private> old(m_priv.data());
58
59 m_priv = new Private;
2
Calling 'QExplicitlySharedDataPointer::operator='
7
Returning; memory was released
60 copyImageData(old);
8
Calling 'DImg::copyImageData'
61 copyMetaData(old);
62
63 if (old->data)
64 {
65 size_t size = allocateData();
66 memcpy(m_priv->data, old->data, size);
67 }
68}
69
70void DImg::putImageData(uint width, uint height, bool sixteenBit, bool alpha, uchar* const data, bool copyData)
71{
72 // set image data, metadata is untouched
73
74 bool null = (width == 0) || (height == 0);
75
76 // allocateData, or code below will set null to false
77
78 setImageData(true, width, height, sixteenBit, alpha);
79
80 // replace data
81
82 delete [] m_priv->data;
83
84 if (null)
85 {
86 // image is null - no data
87
88 m_priv->data = nullptr;
89 }
90 else if (copyData)
91 {
92 size_t size = allocateData();
93
94 if (data)
95 {
96 memcpy(m_priv->data, data, size);
97 }
98 }
99 else
100 {
101 if (data)
102 {
103 m_priv->data = data;
104 m_priv->null = false;
105 }
106 else
107 {
108 allocateData();
109 }
110 }
111}
112
113void DImg::putImageData(uchar* const data, bool copyData)
114{
115 if (!data)
116 {
117 delete [] m_priv->data;
118 m_priv->data = nullptr;
119 m_priv->null = true;
120 }
121 else if (copyData)
122 {
123 memcpy(m_priv->data, data, numBytes());
124 }
125 else
126 {
127 m_priv->data = data;
128 }
129}
130
131void DImg::resetMetaData()
132{
133 QMutexLocker lock(&m_priv->mutex);
134
135 m_priv->attributes.clear();
136 m_priv->embeddedText.clear();
137 m_priv->metaData = MetaEngineData();
138}
139
140uchar* DImg::stripImageData()
141{
142 uchar* const data = m_priv->data;
143 m_priv->data = nullptr;
144 m_priv->null = true;
145
146 return data;
147}
148
149void DImg::copyMetaData(const QExplicitlySharedDataPointer<Private>& src)
150{
151 QMutexLocker lock(&m_priv->mutex);
152
153 m_priv->metaData = src->metaData;
154 m_priv->attributes = src->attributes;
155 m_priv->embeddedText = src->embeddedText;
156 m_priv->iccProfile = src->iccProfile;
157 m_priv->imageHistory = src->imageHistory;
158
159 // FIXME: what about sharing and deleting lanczos_func?
160}
161
162void DImg::copyImageData(const QExplicitlySharedDataPointer<Private>& src)
163{
164 setImageData(src->null, src->width, src->height, src->sixteenBit, src->alpha);
83 m_priv->data = nullptr;
84
85 if (null)
86 {
87 // image is null - no data
88
89 return;
90 }
91 else if (copyData)
92 {
93 size_t size = allocateData();
94
95 if (m_priv->data && data)
96 {
97 memcpy(m_priv->data, data, size);
98 }
99 }
100 else
101 {
102 if (data)
103 {
104 m_priv->data = data;
105 m_priv->null = false;
106 }
107 else
108 {
109 allocateData();
110 }
111 }
112}
113
114void DImg::putImageData(uchar* const data, bool copyData)
115{
116 if (!data)
117 {
118 delete [] m_priv->data;
119 m_priv->data = nullptr;
120 m_priv->null = true;
121 }
122 else if (copyData)
123 {
124 memcpy(m_priv->data, data, numBytes());
125 }
126 else
127 {
128 m_priv->data = data;
129 }
130}
131
132void DImg::resetMetaData()
133{
134 QMutexLocker lock(&m_priv->mutex);
135
136 m_priv->attributes.clear();
137 m_priv->embeddedText.clear();
138 m_priv->metaData = MetaEngineData();
139}
140
141uchar* DImg::stripImageData()
142{
143 uchar* const data = m_priv->data;
144 m_priv->data = nullptr;
145 m_priv->null = true;
146
147 return data;
148}
149
150void DImg::copyMetaData(const QExplicitlySharedDataPointer<Private>& src)
151{
152 QMutexLocker lock(&m_priv->mutex);
153
154 m_priv->metaData = src->metaData;
155 m_priv->attributes = src->attributes;
156 m_priv->embeddedText = src->embeddedText;
157 m_priv->iccProfile = src->iccProfile;
158 m_priv->imageHistory = src->imageHistory;
159
160 // FIXME: what about sharing and deleting lanczos_func?
161}
162
163void DImg::copyImageData(const QExplicitlySharedDataPointer<Private>& src)
164{
165 setImageData(src->null, src->width, src->height, src->sixteenBit, src->alpha);
9
Calling 'QExplicitlySharedDataPointer::operator->'
165}
166
167size_t DImg::allocateData() const
168{
169 quint64 size = (quint64)m_priv->width *
170 (quint64)m_priv->height *
171 (quint64)(m_priv->sixteenBit ? 8 : 4);
172
173 if (size >= std::numeric_limits<size_t>::max())
174 {
175 m_priv->null = true;
176
177 return 0;
178 }
179
180 m_priv->data = DImgLoader::new_failureTolerant(size);
181
182 if (!m_priv->data)
183 {
184 m_priv->null = true;
185
186 return 0;
187 }
188
189 m_priv->null = false;
190
191 return size;
192}
193
194void DImg::setImageDimension(uint width, uint height)
195{
196 m_priv->width = width;
197 m_priv->height = height;
198}
199
200void DImg::setImageData(bool null, uint width, uint height, bool sixteenBit, bool alpha)
201{
202 m_priv->null = null;
203 m_priv->width = width;
204 m_priv->height = height;
205 m_priv->alpha = alpha;
206 m_priv->sixteenBit = sixteenBit;
207}
208
209} // namespace Digikam
166}
167
168size_t DImg::allocateData() const
169{
170 quint64 size = (quint64)m_priv->width *
171 (quint64)m_priv->height *
172 (quint64)(m_priv->sixteenBit ? 8 : 4);
173
174 if (size >= std::numeric_limits<size_t>::max())
175 {
176 m_priv->null = true;
177
178 return 0;
179 }
180
181 m_priv->data = DImgLoader::new_failureTolerant(size);
182
183 if (!m_priv->data)
184 {
185 m_priv->null = true;
186
187 return 0;
188 }
189
190 m_priv->null = false;
191
192 return size;
193}
194
195void DImg::setImageDimension(uint width, uint height)
196{
197 m_priv->width = width;
198 m_priv->height = height;
199}
200
201void DImg::setImageData(bool null, uint width, uint height, bool sixteenBit, bool alpha)
202{
203 m_priv->null = null;
204 m_priv->width = width;
205 m_priv->height = height;
206 m_priv->alpha = alpha;
207 m_priv->sixteenBit = sixteenBit;
208}
209
210} // namespace Digikam

/usr/lib64/qt5/include/QtCore/qshareddata.h

1/****************************************************************************
2**
3** Copyright (C) 2016 The Qt Company Ltd.
4** Contact: https://www.qt.io/licensing/
5**
6** This file is part of the QtCore module of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:LGPL$
9** Commercial License Usage
10** Licensees holding valid commercial Qt licenses may use this file in
11** accordance with the commercial license agreement provided with the
12** Software or, alternatively, in accordance with the terms contained in
13** a written agreement between you and The Qt Company. For licensing terms
14** and conditions see https://www.qt.io/terms-conditions. For further
15** information use the contact form at https://www.qt.io/contact-us.
16**
17** GNU Lesser General Public License Usage
18** Alternatively, this file may be used under the terms of the GNU Lesser
19** General Public License version 3 as published by the Free Software
20** Foundation and appearing in the file LICENSE.LGPL3 included in the
21** packaging of this file. Please review the following information to
22** ensure the GNU Lesser General Public License version 3 requirements
23** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24**
25** GNU General Public License Usage
26** Alternatively, this file may be used under the terms of the GNU
27** General Public License version 2.0 or (at your option) the GNU General
28** Public license version 3 or any later version approved by the KDE Free
29** Qt Foundation. The licenses are as published by the Free Software
30** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31** included in the packaging of this file. Please review the following
32** information to ensure the GNU General Public License requirements will
33** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34** https://www.gnu.org/licenses/gpl-3.0.html.
35**
36** $QT_END_LICENSE$
37**
38****************************************************************************/
39
40#ifndef QSHAREDDATA_H
41#define QSHAREDDATA_H
42
43#include <QtCore/qglobal.h>
44#include <QtCore/qatomic.h>
45#if QT_DEPRECATED_SINCE(5, 6)(((5<<16)|(6<<8)|(0)) > ((5<<16)|(0<<
8)|(0)))
46#include <QtCore/qhash.h>
47#endif
48#include <QtCore/qhashfunctions.h>
49
50QT_BEGIN_NAMESPACE
51
52
53template <class T> class QSharedDataPointer;
54
55class Q_CORE_EXPORT__attribute__((visibility("default"))) QSharedData
56{
57public:
58 mutable QAtomicInt ref;
59
60 inline QSharedData() : ref(0) { }
61 inline QSharedData(const QSharedData &) : ref(0) { }
62
63private:
64 // using the assignment operator would lead to corruption in the ref-counting
65 QSharedData &operator=(const QSharedData &);
66};
67
68template <class T> class QSharedDataPointer
69{
70public:
71 typedef T Type;
72 typedef T *pointer;
73
74 inline void detach() { if (d && d->ref.load() != 1) detach_helper(); }
75 inline T &operator*() { detach(); return *d; }
76 inline const T &operator*() const { return *d; }
77 inline T *operator->() { detach(); return d; }
78 inline const T *operator->() const { return d; }
79 inline operator T *() { detach(); return d; }
80 inline operator const T *() const { return d; }
81 inline T *data() { detach(); return d; }
82 inline const T *data() const { return d; }
83 inline const T *constData() const { return d; }
84
85 inline bool operator==(const QSharedDataPointer<T> &other) const { return d == other.d; }
86 inline bool operator!=(const QSharedDataPointer<T> &other) const { return d != other.d; }
87
88 inline QSharedDataPointer() { d = nullptr; }
89 inline ~QSharedDataPointer() { if (d && !d->ref.deref()) delete d; }
90
91 explicit QSharedDataPointer(T *data) Q_DECL_NOTHROWnoexcept;
92 inline QSharedDataPointer(const QSharedDataPointer<T> &o) : d(o.d) { if (d) d->ref.ref(); }
93 inline QSharedDataPointer<T> & operator=(const QSharedDataPointer<T> &o) {
94 if (o.d != d) {
95 if (o.d)
96 o.d->ref.ref();
97 T *old = d;
98 d = o.d;
99 if (old && !old->ref.deref())
100 delete old;
101 }
102 return *this;
103 }
104 inline QSharedDataPointer &operator=(T *o) {
105 if (o != d) {
106 if (o)
107 o->ref.ref();
108 T *old = d;
109 d = o;
110 if (old && !old->ref.deref())
111 delete old;
112 }
113 return *this;
114 }
115#ifdef Q_COMPILER_RVALUE_REFS
116 QSharedDataPointer(QSharedDataPointer &&o) Q_DECL_NOTHROWnoexcept : d(o.d) { o.d = nullptr; }
117 inline QSharedDataPointer<T> &operator=(QSharedDataPointer<T> &&other) Q_DECL_NOTHROWnoexcept
118 {
119 QSharedDataPointer moved(std::move(other));
120 swap(moved);
121 return *this;
122 }
123#endif
124
125 inline bool operator!() const { return !d; }
126
127 inline void swap(QSharedDataPointer &other) Q_DECL_NOTHROWnoexcept
128 { qSwap(d, other.d); }
129
130protected:
131 T *clone();
132
133private:
134 void detach_helper();
135
136 T *d;
137};
138
139template <class T> inline bool operator==(std::nullptr_t p1, const QSharedDataPointer<T> &p2)
140{
141 Q_UNUSED(p1)(void)p1;;
142 return !p2;
143}
144
145template <class T> inline bool operator==(const QSharedDataPointer<T> &p1, std::nullptr_t p2)
146{
147 Q_UNUSED(p2)(void)p2;;
148 return !p1;
149}
150
151template <class T> class QExplicitlySharedDataPointer
152{
153public:
154 typedef T Type;
155 typedef T *pointer;
156
157 inline T &operator*() const { return *d; }
158 inline T *operator->() { return d; }
159 inline T *operator->() const { return d; }
10
Use of memory after it is freed
160 inline T *data() const { return d; }
161 inline const T *constData() const { return d; }
162 inline T *take() { T *x = d; d = nullptr; return x; }
163
164 inline void detach() { if (d && d->ref.load() != 1) detach_helper(); }
165
166 inline void reset()
167 {
168 if(d && !d->ref.deref())
169 delete d;
170
171 d = nullptr;
172 }
173
174 inline operator bool () const { return d != nullptr; }
175
176 inline bool operator==(const QExplicitlySharedDataPointer<T> &other) const { return d == other.d; }
177 inline bool operator!=(const QExplicitlySharedDataPointer<T> &other) const { return d != other.d; }
178 inline bool operator==(const T *ptr) const { return d == ptr; }
179 inline bool operator!=(const T *ptr) const { return d != ptr; }
180
181 inline QExplicitlySharedDataPointer() { d = nullptr; }
182 inline ~QExplicitlySharedDataPointer() { if (d && !d->ref.deref()) delete d; }
183
184 explicit QExplicitlySharedDataPointer(T *data) Q_DECL_NOTHROWnoexcept;
185 inline QExplicitlySharedDataPointer(const QExplicitlySharedDataPointer<T> &o) : d(o.d) { if (d) d->ref.ref(); }
186
187 template<class X>
188 inline QExplicitlySharedDataPointer(const QExplicitlySharedDataPointer<X> &o)
189#ifdef QT_ENABLE_QEXPLICITLYSHAREDDATAPOINTER_STATICCAST
190 : d(static_cast<T *>(o.data()))
191#else
192 : d(o.data())
193#endif
194 {
195 if(d)
196 d->ref.ref();
197 }
198
199 inline QExplicitlySharedDataPointer<T> & operator=(const QExplicitlySharedDataPointer<T> &o) {
200 if (o.d != d) {
201 if (o.d)
202 o.d->ref.ref();
203 T *old = d;
204 d = o.d;
205 if (old && !old->ref.deref())
206 delete old;
207 }
208 return *this;
209 }
210 inline QExplicitlySharedDataPointer &operator=(T *o) {
211 if (o != d) {
3
Taking true branch
212 if (o)
4
Taking true branch
213 o->ref.ref();
214 T *old = d;
215 d = o;
216 if (old && !old->ref.deref())
5
Taking true branch
217 delete old;
6
Memory is released
218 }
219 return *this;
220 }
221#ifdef Q_COMPILER_RVALUE_REFS
222 inline QExplicitlySharedDataPointer(QExplicitlySharedDataPointer &&o) Q_DECL_NOTHROWnoexcept : d(o.d) { o.d = nullptr; }
223 inline QExplicitlySharedDataPointer<T> &operator=(QExplicitlySharedDataPointer<T> &&other) Q_DECL_NOTHROWnoexcept
224 {
225 QExplicitlySharedDataPointer moved(std::move(other));
226 swap(moved);
227 return *this;
228 }
229#endif
230
231 inline bool operator!() const { return !d; }
232
233 inline void swap(QExplicitlySharedDataPointer &other) Q_DECL_NOTHROWnoexcept
234 { qSwap(d, other.d); }
235
236protected:
237 T *clone();
238
239private:
240 void detach_helper();
241
242 T *d;
243};
244
245template <class T>
246Q_INLINE_TEMPLATEinline QSharedDataPointer<T>::QSharedDataPointer(T *adata) Q_DECL_NOTHROWnoexcept
247 : d(adata)
248{ if (d) d->ref.ref(); }
249
250template <class T>
251Q_INLINE_TEMPLATEinline T *QSharedDataPointer<T>::clone()
252{
253 return new T(*d);
254}
255
256template <class T>
257Q_OUTOFLINE_TEMPLATE void QSharedDataPointer<T>::detach_helper()
258{
259 T *x = clone();
260 x->ref.ref();
261 if (!d->ref.deref())
262 delete d;
263 d = x;
264}
265
266template <class T>
267Q_INLINE_TEMPLATEinline T *QExplicitlySharedDataPointer<T>::clone()
268{
269 return new T(*d);
270}
271
272template <class T>
273Q_OUTOFLINE_TEMPLATE void QExplicitlySharedDataPointer<T>::detach_helper()
274{
275 T *x = clone();
276 x->ref.ref();
277 if (!d->ref.deref())
278 delete d;
279 d = x;
280}
281
282template <class T>
283Q_INLINE_TEMPLATEinline QExplicitlySharedDataPointer<T>::QExplicitlySharedDataPointer(T *adata) Q_DECL_NOTHROWnoexcept
284 : d(adata)
285{ if (d) d->ref.ref(); }
286
287template <class T> inline bool operator==(std::nullptr_t p1, const QExplicitlySharedDataPointer<T> &p2)
288{
289 Q_UNUSED(p1)(void)p1;;
290 return !p2;
291}
292
293template <class T> inline bool operator==(const QExplicitlySharedDataPointer<T> &p1, std::nullptr_t p2)
294{
295 Q_UNUSED(p2)(void)p2;;
296 return !p1;
297}
298
299template <class T>
300Q_INLINE_TEMPLATEinline void qSwap(QSharedDataPointer<T> &p1, QSharedDataPointer<T> &p2)
301{ p1.swap(p2); }
302
303template <class T>
304Q_INLINE_TEMPLATEinline void qSwap(QExplicitlySharedDataPointer<T> &p1, QExplicitlySharedDataPointer<T> &p2)
305{ p1.swap(p2); }
306
307QT_END_NAMESPACE
308namespace std {
309 template <class T>
310 Q_INLINE_TEMPLATEinline void swap(QT_PREPEND_NAMESPACE(QSharedDataPointer)::QSharedDataPointer<T> &p1, QT_PREPEND_NAMESPACE(QSharedDataPointer)::QSharedDataPointer<T> &p2)
311 { p1.swap(p2); }
312
313 template <class T>
314 Q_INLINE_TEMPLATEinline void swap(QT_PREPEND_NAMESPACE(QExplicitlySharedDataPointer)::QExplicitlySharedDataPointer<T> &p1, QT_PREPEND_NAMESPACE(QExplicitlySharedDataPointer)::QExplicitlySharedDataPointer<T> &p2)
315 { p1.swap(p2); }
316}
317QT_BEGIN_NAMESPACE
318
319template <class T>
320Q_INLINE_TEMPLATEinline uint qHash(const QSharedDataPointer<T> &ptr, uint seed = 0) Q_DECL_NOTHROWnoexcept
321{
322 return qHash(ptr.data(), seed);
323}
324template <class T>
325Q_INLINE_TEMPLATEinline uint qHash(const QExplicitlySharedDataPointer<T> &ptr, uint seed = 0) Q_DECL_NOTHROWnoexcept
326{
327 return qHash(ptr.data(), seed);
328}
329
330template<typename T> Q_DECLARE_TYPEINFO_BODY(QSharedDataPointer<T>, Q_MOVABLE_TYPE)class QTypeInfo<QSharedDataPointer<T> > { public:
enum { isSpecialized = true, isComplex = (((Q_MOVABLE_TYPE) &
Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE) &
(Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isRelocatable = !
isStatic || ((Q_MOVABLE_TYPE) & Q_RELOCATABLE_TYPE), isLarge
= (sizeof(QSharedDataPointer<T>)>sizeof(void*)), isPointer
= false, isIntegral = std::is_integral< QSharedDataPointer
<T> >::value, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE
) != 0), sizeOf = sizeof(QSharedDataPointer<T>) }; static
inline const char *name() { return "QSharedDataPointer<T>"
; } }
;
331template<typename T> Q_DECLARE_TYPEINFO_BODY(QExplicitlySharedDataPointer<T>, Q_MOVABLE_TYPE)class QTypeInfo<QExplicitlySharedDataPointer<T> >
{ public: enum { isSpecialized = true, isComplex = (((Q_MOVABLE_TYPE
) & Q_PRIMITIVE_TYPE) == 0), isStatic = (((Q_MOVABLE_TYPE
) & (Q_MOVABLE_TYPE | Q_PRIMITIVE_TYPE)) == 0), isRelocatable
= !isStatic || ((Q_MOVABLE_TYPE) & Q_RELOCATABLE_TYPE), isLarge
= (sizeof(QExplicitlySharedDataPointer<T>)>sizeof(void
*)), isPointer = false, isIntegral = std::is_integral< QExplicitlySharedDataPointer
<T> >::value, isDummy = (((Q_MOVABLE_TYPE) & Q_DUMMY_TYPE
) != 0), sizeOf = sizeof(QExplicitlySharedDataPointer<T>
) }; static inline const char *name() { return "QExplicitlySharedDataPointer<T>"
; } }
;
332
333QT_END_NAMESPACE
334
335#endif // QSHAREDDATA_H